'...func'
정해지지 않은 수의 매개변수를 배열로 받을 수 있다.
fun pipe(...func) { return function (num) { let result = num; func.forEach(el => { result = el }) } }
배열의 각 요소를 특정 방법(함수)에 따라 원하는 하나의 형태로 응축한다.
[0,1,2,3,4].reduce( (accumulator, currentValue, currentIndex, array){ return accumulator + currentValue; });
[0,1,2,3,4].reduce( (accumulator, currentValue, currentIndex, array){ return accumulator + currentValue; },10);
변수를 hoist 하여 모든 변수들을 최 상단에 선언하며 초기화는 여전히 동일한 위치에서 진행됩니다