[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;
💡 화살표 함수 보기
난해하다 난해해 | 화살표함수 #자바스크립트
화살표함수 () =>함수의 정의 방식으로, 함수를 간결하게 표현 할 수 있다. 왜 이런걸 만들어서 사람 피곤하게 하니 라고 생각했었지만 자주 보고 쓰다 보면 어느 새 손에 익더라.. (아마도) 예시
reactjy2.tistory.com
- 끝 -
'프론트 > 자바스크립트' 카테고리의 다른 글
[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 |