Language/Javascript
[ Javascript ] Array.prototype.filter() & filter 메서드
kitez
2022. 1. 11. 00:35
Array.prototype.filter()
filter()는 주어진 함수의 조건을 통과하는 모든 요소를 모아 새로운 배열로 반환하는 메서드이다.
구문
arr.filter( callback ( element[, index[, array]])[, thisArg])
매개변수
- callback : 각 요소를 필터링할 조건을 담고 있는 함수로 boolean을 반환한다. 반환 값이 true이면 값을 유지하고 false이면 요소를 삭제한다.
- element : 처리할 현재 요소
- index ( option ) : 처리한 현재 요소의 인덱스
- array ( option ) : filter를 호출한 배열
- thisArg ( option ) : callback을 실행할 때 this로 사용하는 값
반환 값
callback 함수로 걸러진 새로운 요소들로 이루어진 배열을 반환한다. 어떠한 요소도 조건을 통과하지 못했을 경우 빈 배열을 반환한다.
예제 코드
// 예제 코드
// 2의 배수만 남기기
let arr = [1,2,3,4,5];
arr = arr.filter( i => {
return i % 2 === 0;
});
console.log(arr); // [2, 4]
▶ map과 filter의 공통점
: 기존배열은 수정하지 않고 요소들을 순환하면서 새로운 배열을 반환한다.
▶ map과 filter의 차이점
: map은 콜백함수의 내용을 기존의 요소에 적용하여 새로운 요소를 생성/반환
: filter는 콜백함수의 조건문을 만족하는 요소들을 반환
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/filter
https://velog.io/@tjdud0123/javascript-map-filter-%ED%95%A8%EC%88%98
728x90