해결된 질문
작성
·
372
1
안녕하세요 선생님 강의도 여러번 돌려보고 혼자서 이해해보려고 했는데, 도저히 이해가 되지
않아 질문 드립니다.
혹시 아래 total_quantity 함수와 total_price 함수를 작성하는거 까지는 이해가 가는데,
그 후에 products => go(products, 부분을 빼고 pipe 함수로 감싸는 부분이 이해가 되지 않습니다. pipe, go에 대해 제가 아직 미숙한거 같긴한데.. pipe함수가 함수를 받아 두고 그 이후에 다시 함수가 실행되면 받아둔 함수를 이후에 받은 매개변수를 넣어 실행하는 함수라고 생각을 했는데요. 혹시 해당 부분에서 pipe를 사용하신 이유가 있으실까요?? 어떻게 products => go(products,부분만 보고 바로 pipe 함수를 사용해도 된다고 생각하신건가요??
추가로, total_price에서 products => 부분을 지우고
go(products,
map(p=>p.price * p.quantity),
reduce((a,b)=>a+b)) 로 작성해도 문제 없이 값이 나타나는거 같은데요 혹시 products를
미리 받은 이유가 있을까요??
제가 너무 이해가 미숙하여 질문도 미숙할 수 있겠지만..확인 한번 부탁 드리겠습니다!
const total_quantity = products => go(products,
map(p => p.quantity),
reduce((a,b)=> a + b));
console.log(total_quantity(products))
const total_price = products => go(products,
map(p=>p.price * p.quantity),
reduce((a,b)=>a+b));
console.log(total_price(products))
감사합니다 선생님 이해되었습니다 !