Javascript
JavaScript Array(배열) reduce
굿다운
2021. 5. 24. 14:23
자바 스크립트 배열 reduce() 방법 소개
let numbers = [1, 2, 3];
let sum = 0;
for (let i = 0; i < numbers.length; i++) {
sum += numbers[i];
}
console.log(sum);//6
평소 for문으로 돌리면 이렇게 코드를 짜야 될것입니다.
하지만 reduce를 사용하면 이렇게 구현가능합니다.
let sum = numbers.reduce(function (accumulator, current) {
return accumulator + current;
});
console.log(sum); // 6
reducer함수는 4 개의 인수를 사용합니다.
function reducer(accumulator, currentValue, currentIndex, array){}
1) accumulator가 초기값이고,
2) currentValue 반복에서 배열 요소의 값입니다.
3) currentIndex 반복에서 배열 요소의 인덱스입니다.
4)array reduce()메서드가 호출된 배열입니다.
이 reducer()함수는 각 요소에서 실행되고 값을 반환합니다. 이 반환 값은 accumulator각 반복 의 인수에 할당됩니다 . 최종 반복에서의 값은 accumulator단일 결과 값이됩니다.
자바 스크립트 배열 reduceRight()방법
reduceRight()방법은 방법과 동일한 방식으로 작동 reduce()하지만 반대 방향으로 작동합니다.
let numbers = [1, 2, 3];
let sum = numbers.reduceRight(function (acc, curr) {
console.log('acc: ', acc, 'curr:', curr);
return acc + curr;
});
console.log(sum);
acc: 3 curr: 2
acc: 5 curr: 1
6