filter()
filter()
은 배열의 메서드이다. 주어진 함수의 테스트를 통과하는 모든 요소를 모아 새로운 배열로
반환 될때 사용된다.
arr.filter(callback(element[, index[, array]])[, thisArg])
callback
: 각 요소를 시험하는 함수. true 면 가져오고 false 면 버린다.
elemen
t : 현재 요소
index
: 처리할 현재 요소의 인덱스
thisArg
: callback
을 실행할때 this 로 사용되는 값
ex)
모든 작은 값 걸러내기
function isBigEnough(value) {
return value >= 10;
}
var filtered = [12, 5, 8, 130, 44].filter(isBigEnough);
// filtered 는 [12, 130, 44]
배열 내용 검색
const fruits = ['apple', 'banana', 'grapes', 'mango', 'orange'];
/**
* 검색 조건에 따른 배열 필터링(쿼리)
*/
const filterItems = (query) => {
return fruits.filter((el) =>
el.toLowerCase().indexOf(query.toLowerCase()) > -1
); //toLowerCase() : 소문자로 변환된 문자열 값을 호출
}
console.log(filterItems('ap')); // ['apple', 'grapes']
console.log(filterItems('an')); // ['banana', 'mango', 'orange']