function reduce( $list, $fn, $memo )
{
let memo = $memo;
each( $list, ( $item ) => memo = $fn( memo, $item ));
return memo;
}
function each( $list, $fn ){
for( let item of $list ){
$fn( item );
}
}
const add = ( a, b ) => a + b;
const minus = ( a, b ) => a - b;
console.log( reduce([ 1, 2, 3 ], add, 0 ));
console.log( reduce([ 1, 2, 3 ], minus, 6 ));
'frontend > Java Script' 카테고리의 다른 글
Javascript - 이론 : 순수함수, 일급함수 (0) | 2019.03.15 |
---|---|
6. 함수형 프로그래밍 - pipe (0) | 2019.03.15 |
Javascript - 클로져( Closure ) (0) | 2019.03.14 |
4. 함수형 프로그래밍 - each (0) | 2019.03.14 |
3. 함수형 프로그래밍 - filter + map (0) | 2019.03.14 |