인프런 커뮤니티 질문&답변
pipe 함수 인자관련 질문있습니다
작성
·
270
1
const pipe = (...fs) => (a) => go(a, ...fs);
const f = pipe(
a => a+1,
a=> a+10,
a=> a+100
)
f(0)
이 부분에서 질문이 있습니다.
1. f 함수는 어떻게 0이라는 파라미터를 받을 수 있는가?
- pipe 함수 자체가 ...fs를 파라미터로 받기에 가능한 것인가요?
2. pipe 함수에서의 (a)가 어떻게 f(0)에서의 0으로 연결되는지 이해가 잘 안됩니다.
f(0) = pipe(...fs)(0) 이렇게 되는 건가요?
답변 1
5
MDU 유인동
지식공유자
1. f 함수가 0이라는 파라미터를 받을 수 있는 것은 pipe 함수를 실행했을때의 결과 값이 함수이기 때문입니다.
1.2 pipe 함수가 ...fs 함수들을 파라미터로 받아서 내부적으로 실행할 준비가된 함수를 다시 리턴합니다.
2. 생각하신대로 f(0) == pipe(...fs)(0) 가 맞습니다.
감사합니다. :)





