go에서 사용하는 reduce 함수가 어떻게 동작되는지 이해가 되지않습니다.
410
권혁진
작성한 질문수 8
1
const reduce = (f, acc, iter) => {
// iter에 값이 없으면 두번째 인자인 acc를 iterable로 변환
// acc는 iter의 첫번째 값인 0으로
if (!iter) {
iter = acc[Symbol.iterator]();
acc = iter.next().value;
}
// iter에서 next를 한번 하였기 때문에 (a) => a + 1, 부터 들어감.
for (const a of iter) {
acc = f(acc, a); // acc = ?(0, a => a + 1) { ? }
}
return acc;
};
const go = (...args) => reduce((a, f) => f(a), args);
go(
0,
(a) => a + 1,
(a) => a + 10,
(a) => a + 100
);
reduce에서 f로 인자로 넘겨준 함수가 reduce 함수내에서 어떤식으로 동작하는지를 모르겠습니다.
이거가지고 2일동안 막히고 있네요 ㅠㅠ
답변 2
0
안녕하세요!
로그를 찍어보면서 다시 한 번 잘 봐보시면 어떨까요?
프론트엔드 실무에서 어떤때에 쓰이는지 궁금합니다
1
147
1
함수형 프로그래밍 심화 강의 자료 추천
0
128
2
함수형 자바스크립트 프로그래밍 책
0
93
1
filter가 아무것도 걸러내지 못하는 경우
0
151
1
take 함수의 성능적면에서의 이점
1
515
1
pipe함수
1
555
1
Identity 함수
0
468
1
함수형 프로그래밍이란
0
857
1
reduce 예제 코드 제안!
0
420
1
fxts를 배워보려고 합니다.
1
553
1
flatMap 관련 질문드립니다~
1
469
1
다용성이 높은 L.flatMap
0
375
1
변수에 재 할당 금지~
0
557
1
DevTools라고 옆에 결과 확인하는거 어떻게 하나요?
0
508
2
소요시간에 관해서 질문드립니다
1
482
1
join에 대한 내용이 궁금증이 해결되지 않아서 질문드립니다!
0
494
2
reduce에 L.range를 사용할 때
0
549
2
[이해내용 공유] Lazy 에서 C.reduce가 병렬 효과를 내는 이유
3
773
2
제가 이해한 C.Reduce와 Reduce의 동작 차이 정리
2
835
3
go, pipe 함수 관련하여 질문 드립니다.
1
525
1
안녕하세요 강사님!
0
399
2
fxts에 go가 없는 이유?
0
862
1
비동기 관련 질문입니다!
0
474
1
질문 있습니다.
0
534
1





