본문 바로가기

filter - 자바스크립트

D-caffein 2023. 3. 20.
반응형

filter() 함수는 배열에서 특정 조건을 만족하는 요소들로 이루어진 새로운 배열을 반환합니다. 이 함수는 콜백 함수를 인자로 받아서 배열의 각 요소마다 콜백 함수를 실행하고, 콜백 함수가 true를 반환하는 요소들만 새로운 배열에 포함시킵니다.

filter() 함수는 원본 배열을 변경하지 않고, 새로운 배열을 반환하기 때문에, 함수를 호출한 후에도 원본 배열은 그대로 유지됩니다.

arr.filter(callback(element[, index[, array]])[, thisArg])
  • callback: 배열의 각 요소에 대해 실행할 함수입니다. 이 함수는 element 매개변수로 현재 처리 중인 요소를 받습니다. 두 번째 매개변수로는 index가 전달될 수 있으며, 이는 현재 요소의 인덱스입니다. 마지막으로 array 매개변수는 filter() 함수를 호출한 배열 자체를 가리킵니다. 이 매개변수는 선택적으로 사용할 수 있습니다.
  • thisArg (선택 사항): callback 함수 내에서 this로 사용될 객체입니다. 이 매개변수는 선택적으로 사용할 수 있습니다.
const numbers = [1, 2, 3, 4, 5, 6];
const evenNumbers = numbers.filter((number) => number % 2 === 0);
console.log(evenNumbers); // [2, 4, 6]

위 코드에서는 filter() 함수를 사용하여 배열 numbers에서 짝수만 추출하고, 그 결과를 새로운 배열 evenNumbers에 할당합니다. 이때, 콜백 함수는 number 매개변수를 받아서, 해당 요소가 짝수인지 아닌지를 판단합니다. number % 2 === 0는 number가 2로 나누어 떨어지는지를 확인하는 조건식입니다. 이 조건식이 true인 요소들만 evenNumbers 배열에 포함됩니다.

반응형

'Programming' 카테고리의 다른 글

reduce - 자바스크립트  (0) 2023.03.22
map - 자바스크립트  (0) 2023.03.21
replace - 자바스크립트  (0) 2023.03.20
includes - 자바스크립트  (0) 2023.03.19
sort - 자바스크립트  (0) 2023.03.18

댓글