반응형
SMALL
Array.filter(callback())
==> Array1배열을 순회하며 주어진 callback 함수에서 true를 반환한 요소들을 모아 새로운 배열로 반환한다.
const words = ['spray', 'limit', 'elite', 'exuberant', 'destruction', 'present'];
const result = words.filter(word => word.length > 6);
console.log(result)
//["exuberant", "destruction", "present"]
callback함수는 요소값, 요소인덱스, 순회되는 배열객체와 함께 호출된다.
const words = ['spray', 'limit', 'elite', 'exuberant', 'destruction', 'present'];
const result = words.filter((word, index) => index > 3);
console.log(result)
//[ 'destruction', 'present' ]
const words = ['spray', 'limit', 'elite', 'exuberant', 'destruction', 'present'];
words.filter((word, index) => console.log(word, index));
//spray 0
//limit 1
//elite 2
//exuberant 3
//destruction 4
//present 5
//[]
const words = ['spray', 'limit', 'elite', 'exuberant', 'destruction', 'present'];
const result = words.filter((word, index, arr) => console.log(arr));
console.log(result)
//[ 'spray', 'limit', 'elite', 'exuberant', 'destruction', 'present' ]
//[ 'spray', 'limit', 'elite', 'exuberant', 'destruction', 'present' ]
//[ 'spray', 'limit', 'elite', 'exuberant', 'destruction', 'present' ]
//[ 'spray', 'limit', 'elite', 'exuberant', 'destruction', 'present' ]
//[ 'spray', 'limit', 'elite', 'exuberant', 'destruction', 'present' ]
//[ 'spray', 'limit', 'elite', 'exuberant', 'destruction', 'present' ]
//[]
*원배열은 변하지 않는다.(words)
*callback함수에서 true를 반환하는 요소가 없을 경우 빈배열 반환
*filter()에 의해 처리되는 요소의 범위는 callback의 첫 호출 전에 설정된다.
callback 호출 후에 실행한 원배열의 수정사항은 filter()에 반영되지 않는다.
반응형
LIST
'개발 > Javascript' 카테고리의 다른 글
sort, reverse, join (0) | 2021.01.05 |
---|---|
map (0) | 2021.01.04 |
문자열 찾기(indexOf, includes, search, match) (0) | 2021.01.01 |
문자열 자르기(split, substring, substr) (0) | 2020.12.15 |
slice, splice (0) | 2020.12.15 |