배열 내의 모든 요소 각각에 대하여 callback 함수를 호출한 결과를 모아 새로운 배열을 반환하는 함수이다.
const arr = [1, 2, 3]
const arr2 = arr.map((n) => {
if(n > 2) return n * 10;
else return n * 2;
})
console.log(arr); // [1, 2, 3]
console.log(arr2); // [2, 4, 30]
배열 내의 모든 요소 각각에 대하여 callback 함수를 호출하고, 하나의 결과값을 반환하는 함수이고, 인자로 callback 함수와 initialValue(옵션)를 받는다.
callback 함수는 인자로 아래 값들을 받는다. 이전 callback 함수의 반환값은 다음 callback 함수의 acc에 할당되어 최종적으로 하나의 값을 반환하게 된다.
1. 누적 값 (acc)
2. 현재 값 (cur)
3. 현재 인덱스 (idx)
4. 원본 배열 (arr)
const numbers = [1, 2, 3, 4, 5];
const sum = numbers.reduce((acc, cur) => acc + cur, 0);
console.log(sum); // 15