• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

reduce 에서 초기값이 없을 때

20.02.21 07:59 작성 조회수 142

0

const reduce = (fiteracc=> {
    if (acc === undefined) {
        iter = iter[Symbol.iterator]();
        acc = iter.next().value;
    }
    for (const a of iter) {
        acc = f(acca);
    }
    return acc;
};

log(reduce(add, [123]));
log(reduce(add, [123], 10));

위 처럼 acc가 옵션값으로 마지막에 들어가지 않고

설명에서 acc 를 중간에 넣으신 이유가 궁금합니다.

답변 2

·

답변을 작성해보세요.

0

뿡아님의 프로필

뿡아

질문자

2020.02.22

답변 감사합니다.

관례적으로 옵셔널한 값은 맨 뒤에 넣는다고 생각했는데, 함수형 언어들은 중간에 넣어서 쓰기도 하나보네요.

0

다른 함수형 언어들의 reduce가 보통 acc가 중간에 들어갑니다 :)