• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

reduce 에 function 인자에 대한 질문입니다.

21.07.31 11:26 작성 조회수 127

0

안녕하세요.

강사님이 네이버에서 강의한 내용을 보면서, 모든 코드 줄 하나하나에 감탄하면서 봤습니다.

인프런에도 강의 공유 해주셔서 정말 감사합니다. 덕분에 이렇게 직접 질문도 드릴수 있게됐네요.

    const log = console.log;
    function reduce(f, init, iter) {
        if(arguments.length==2) {
            iter = init[Symbol.iterator]();
            init = iter.next().value;
        }
        for (const a of iter) {
            init = f(init, a);
        }
        return init;
    }
    const go = (...fs) => reduce((f,a) => f(a), fs);
    go(100, a=>a+1, a=>a+10, log);

강사님, 강의를 보면서 직접 코딩했는데, 위 처럼 f와 a의 위치에 따라 오류가 발생합니다.

분명 위치값은 중요하지 않을텐데, 왜 에러가 나는지 도저히 이해가 안됩니다.

도아주세요~

답변 1

답변을 작성해보세요.

1

위 코드에서 (f, a) => f(a) 는 (a, f) => f(a) 가 되어야 맞습니다. 강의 예제대로 다시 한 번 잘 작성해봐주세요 :)

감사합니다!