Inflearn brand logo image

인프런 커뮤니티 질문&답변

withkey님의 프로필 이미지
withkey

작성한 질문수

함수형 프로그래밍과 JavaScript ES6+

reduce

[수업에서 벗어난 질문.. ] reduce 를 타입스크립트에서 구현한다면..

작성

·

336

0

다소 외람된 질문입니다만 혼자서 고민하다가.. 이경우에는 어떻게 타입을 설정해야할지.. 궁금하여 질문을 드립니다..

export const reduce = <T, F>(
  f: (acc: F, a: T) => F,
  acc: F,
  iter: Iterable<T>
): F => {
  // if (!iter) {
  //   iter = acc[Symbol.iterator]();
  //   acc = iter.next().value;
  // }

  for (const el of iter) {
    acc = f(acc, el);
  }

  return acc;
};

iter가 !iter 일때.. acc의 타입이 F 이기때문에 [Symbol.iterator]()를 찾지 못하는데.. 이런경우에는 어떻게 하면 좋을까요.. 수업에서 벗어나는 타입스크립트라서 답변을 주시지 않아도 괜찮습니다.

 

감사합니다.

 

답변 1

1

MDU 유인동님의 프로필 이미지
MDU 유인동
지식공유자

저희 회사 멤버들이 만든 fxts 를 참고해보세요 :)

https://github.com/marpple/FxTS/blob/main/src/reduce.ts

 

 

 

withkey님의 프로필 이미지
withkey
질문자

헉 감사합니다!

withkey님의 프로필 이미지
withkey

작성한 질문수

질문하기