Javascript/method

Array.filter()

안개바다 2023. 3. 16. 11:31

Array.filter()

filter()는 입력된 함수에 따라 조건에 맞는 배열의 요소들만 새로운 배열로 리턴한다.

예를 들어 배열에서 10보다 작은 요소들만 남기고 싶다면 이런 식으로 할 수 있다.

let arr = [3,4,255,34,23,5];
let newArr = arr.filter((el)=>el<10);

arr => [3,4,255,34,23,5];
newArr => [3,4,5];

이렇게 filter 메소드는 자동으로 배열을 순회하며 조건에 맞는 요소들만 정리하여 새로운 배열을 return 한다.

filter가 없었다면 반복문을 이용해 직접 배열을 순회하는 코드를 길게 작성해야 했겠지만 filter 메소드를 통해 간단하게 표현할 수 있다.

배열의 원본을 수정하는 메소드가 아니기 때문에 빈 배열에 받아 주는 과정이 필요하다.

알고리즘 사이트에서 반복문으로 작성한 코드를 filter로 리팩토링 하니 연산시간이 감소했다.  안 쓸 이유가 없는 것 같다.