1. map 함수
map 함수는 배열의 각 요소에 대해 주어진 함수를 호출하고, 그 결과를 새로운 배열로 반환합니다. 기존 배열은 변경되지 않습니다.
const numbers = [1, 2, 3, 4, 5];
const squaredNumbers = numbers.map((num) => num * num);
console.log(squaredNumbers);
2. reduce 함수
reduce 함수는 배열의 각 요소에 대해 주어진 함수를 실행하고, 결과를 누적하여 단일 값으로 반환합니다.
const numbers = [1, 2, 3, 4, 5];
const sum = numbers.reduce((accumulator, currentValue) => accumulator + currentValue, 0);
console.log(sum);
3. filter 함수
filter 함수는 주어진 함수의 조건을 만족하는 요소들로 이루어진 새로운 배열을 반환합니다.
const numbers = [1, 2, 3, 4, 5];
const evenNumbers = numbers.filter((num) => num % 2 === 0);
console.log(evenNumbers);
JavaScript에서의 map, reduce, 그리고 filter는 배열을 다룰 때 유용한 고차 함수(higher-order functions)입니다.
이러한 함수들은 각각의 기능에 따라 배열의 요소를 조작하거나 새로운 배열을 생성하는 데 사용됩니다.
이러한 함수들은 함수형 프로그래밍의 개념을 지원하며, 코드를 간결하고 가독성 있게 만들어줍니다.
함수형 프로그래밍은 부작용(side effects)을 최소화하고, 불변성(immutability)을 지향하여 프로그램을 더 예측 가능하고 유지보수하기 쉽게 만듭니다