강의

멘토링

커뮤니티

Inflearn コミュニティ Q&A

0131mj9305 のプロフィール画像
0131mj9305

投稿した質問数

関数型プログラミングとJavaScript ES6+

イタラブルプロトコルに従ったマップの多型2

reduce 에서 초기값이 없을 때

作成

·

268

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 를 중간에 넣으신 이유가 궁금합니다.

javascript함수형-프로그래밍

回答 2

0

Dev님의 프로필 이미지
Dev
質問者

답변 감사합니다.

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

0

mduniv님의 프로필 이미지
mduniv
インストラクター

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

0131mj9305 のプロフィール画像
0131mj9305

投稿した質問数

質問する