• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

curry를 사용하여 축약할때, iter 에 관한 질문

19.04.27 15:41 작성 조회수 174

0

_go(
  products,
  _filter(p => p.price < 20000),
  _map(p => p.price),
  _reduce(add),
  console.log
)
const _go = (...args) => _reduce((a, fns) => fns(a), args 

여기에서 args 를 명시하지 않아도 되기 때문에 간결한 코드가 나오게 되었는데, curry 함수의 어떤 부분이 iter 될 args 가 없음에도 작동하는지 알고싶습니다.

답변 2

·

답변을 작성해보세요.

5

curry 함수에 fa 함수를 넣고나면,

fa 함수를 실행할 때 인자 x 를 1개만 넣을 경우,

인자 x를 기억하는 함수 fb 를 리턴하게 됩니다.

함수 fb를 나중에 실행하면서 y를 인자로 전달하면 fb가 fa를 실행하면서 x, y를 전달합니다. 

열심히 들어주셔서 고맙습니다.

 

 

0

vanila님의 프로필

vanila

질문자

2019.04.27

6분 26 초에 평가 시점이 products, 다음에 와도 동작한다고 말씀해주셨는데 좀 더 보충 설명 들을 수 있을까요?

filter, map, reduce 가 curry 을 통해서 어떻게 적용되어지는지 알고싶습니다...