자바스크립트 배열 필터링하기

자바스크립트에서 배열을 필터링하는 것은 배열의 요소들 중 원하는 조건에 부합하는 요소들만 남기는 작업을 의미합니다. 이는 배열에서 특정 요소를 추출할 때 유용하며, 많은 데이터를 다루는 경우에도 성능 개선을 도모할 수 있습니다.

자바스크립트의 filter() 메소드를 사용하면 간단하게 배열을 필터링할 수 있습니다. filter() 메소드는 조건을 만족하는 요소들로 이루어진 새로운 배열을 반환합니다.

예를 들어, 1부터 10까지의 숫자로 이루어진 배열에서 짝수만 필터링하고 싶은 경우 다음과 같은 코드를 사용할 수 있습니다.

const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

const evenNumbers = numbers.filter(num => num % 2 === 0);

console.log(evenNumbers); // [2, 4, 6, 8, 10]

위의 예시 코드에서 filter() 메소드를 사용하여 numbers 배열의 각 요소를 num으로 받아들여, num이 2로 나누어 떨어지는지 확인하여 필터링합니다. 필터링된 결과 배열은 evenNumbers 변수에 저장되고, 이를 콘솔에 출력합니다.

또한, 배열을 필터링하는데는 다양한 조건을 사용할 수 있습니다. filter() 메소드의 인자로는 콜백 함수를 전달할 수 있는데, 이 콜백 함수는 배열의 각 요소에 대해 실행되며, 필터링 조건을 정의합니다.

다음은 문자열로 이루어진 배열에서 길이가 5 이상인 문자열만 필터링하는 예시 코드입니다.

const words = ["apple", "banana", "cherry", "dragonfruit", "elderberry"];

const longWords = words.filter(word => word.length >= 5);

console.log(longWords); // ["banana", "cherry", "dragonfruit", "elderberry"]

위의 코드에서는 length 속성을 사용하여 각 요소의 길이를 확인하고, 길이가 5 이상인 요소들만 필터링하여 longWords 배열에 저장하고 있습니다.

배열을 필터링함으로써 우리는 주어진 조건에 부합하는 요소들만 추출할 수 있습니다. 이를 통해 코드의 가독성과 유지보수성을 높일 수 있으며, 간결한 코드를 작성할 수 있습니다. filter() 메소드는 자바스크립트 배열에서 필수적으로 알아야 하는 메소드 중 하나이므로, 활용범위를 확장해 적극적으로 활용해보시기 바랍니다.