filter()는 함수(callback)를 만족하는 요소를 모아 새로운 배열을 반환한다.
const arr = [1, 2, 3, 4, 5]
const result = arr.filter((v, i, arr) => {
console.log(i)
console.log(arr)
console.log('======')
return v >= 3
})
console.log(result)
// 결과
0
[ 1, 2, 3, 4, 5 ]
======
1
[ 1, 2, 3, 4, 5 ]
======
2
[ 1, 2, 3, 4, 5 ]
======
3
[ 1, 2, 3, 4, 5 ]
======
4
[ 1, 2, 3, 4, 5 ]
======
[ 3, 4, 5 ]
결과와 같이 현재요소, 현재 인덱스, 검사하는 배열을 호출한다.
또한 v가 3 이상인 것만 모아 배열을 리턴해준다.
만약 찾는 요소의 하나의 값만 알고 싶으면 find함수를 이용하여 된다.
찾는 요소가 없는 경우 [], 빈배열을 반환해준다.