[JS] reduce() | 배열의 합을 구해보자
- 프론트/자바스크립트
- 2024. 7. 1.
reduce 함수
자바스크립트에서 제공되는 함수 중 하나로, 배열의 각 요소끼리 합한 결과를 제공한다. 이제 배열의 합을 구할때 for문은 갖다 버리도록 하자.
기본구조
array.reduce(callback(accmulator, currentValue, currentIndex, array), 0)
매개변수 설명
- `callback`: 쓰는데 중요하지 않으니 패스하기로 함 (사실 설명 못하겠음)
- `accmulator(acc)`: (필수) 값을 누적하는 변수. 초기값으로 초기화 된다. (코드에서 맨 뒤에 보이는 0이 초기값이다.)
- `currentValue(cur)`: (필수) 현재 처리중인 요소
- `currentIndex(idx)`: 현재 요소의 인덱스
- `array`: 호출한 원본 배열
- `initialValue`: 초기값 (맨 뒤 0), 생략하면 배열의 첫 요소가 초기값이 된다.
매개변수 중 `acc`와 `cur`만 필수값이고 나머지는 선택적으로 사용하면 된다.
예시코드
var arr = [1, 2, 3];
var sum = arr.reduce(function(acc, cur, idx){
return acc + cur;
}, 0);
console.log(sum) // 6
설명
- 매개변수로 `acc`(누적값) 과 `value`(처리중인 요소) 를 사용
- 초기값으로 `0` 을 설정
- 누산기`acc`에 각 요소`value`를 더함
- 마지막으로 `sum`에 저장됨
코드 줄이기 (화살표함수)
화살표 함수를 사용해서 `reduce()`함수를 좀 더 간결하게 표현해보자
var arr = [1, 2, 3]
var sum = arr.reduce((acc, cur) => acc + cur, 0);
console.log(sum); // 6;
💡 화살표 함수 보기
- 끝 -
'프론트 > 자바스크립트' 카테고리의 다른 글
[JS] Promise | 기기기~초초초 개념 (0) | 2024.07.24 |
---|---|
[JS] 객체 데이터 비교하기 (0) | 2024.07.23 |
[JS] 객체의 키, 데이터 가져오기 (0) | 2024.07.22 |
[JS] filter() | 배열을 걸러보자 (0) | 2024.07.08 |
[JS] 화살표함수 | 난해하다 난해해 (0) | 2024.07.01 |