JS map, filter 메소드 구현 해보기

IT공부중·2020년 7월 14일
0

JavsScript

목록 보기
3/22
post-thumbnail

map

map은 Array.prototype에 있는 메소드로써, 콜백함수를 받아서 각 원소마다 배열의 원소마다 콜백함수를 실행한 새로운 배열을 반환한다.

function map(arr, func) {
  const result = [];
  for (let i = 0; i < arr.length; i++) {
    result.push(func(arr[i], i));
  }
  return result;
}

const arr = [1, 2, 3, 4, 5];
console.log(map(arr, (value) => value + 2));
console.log(arr.map((value) => value + 2); 
// 두개 다 결과가 [3,4,5,6,7]이 나온다.

filter

filter 또한 Array.prototype에 있는 메소드로써, arr에서 특정 조건의 원소들을 제거하는데에 유용하다. 말 그대로 필터의 느낌이다.


function filter(arr, func) {
  const result = [];
  for (let i = 0; i < arr.length; i++) {
    func(arr[i], i) && result.push(arr[i]);
  }
  return result;
}

const arr = [1, 2, 3, 4, 5];
console.log(filter(arr, (value) => value > 2));
console.log(arr.filter(value => value > 2);
//둘 다 결과가 [3,4,5]가 나온다.
profile
4년차 프론트엔드 개발자 문건우입니다.

0개의 댓글