f1: fullname f2: appendAddr f3: removeNames 3개가 각각 타도되고 안타도되는거라면 보통 처음 코딩을하면 이것을 함수하나에서 전부 짜게된다 이는 명령형으로 함수를 짜는것이다. 우리는 선언형으로 짜도록 노력해야한다. 처음짜는 사람은 const useResult (u,caller)=>{ if(caller==="fullname")... else if (caller === "appendAddr") .... } //이런식으로 짜게된다. 하지만 이것을 컴포즈로 짜게되면 //화살표 화살표는 커링 //배열의 reduce는 함수형 언어에서 정말 중요하다! //reduce에서는 함수에 기본값을 주면 함수의 인자로서 넣어준다. const compose = (...fns) => (obj) =>..