JavaScript——实现compose函数
前言
如何实现compose函数并通过ES6进行优化
内容
代码
JavaScript版本
function compose (...args) {
return function (value) {
return args.reverse().reduce(function(acc, fn) {
return fn(acc)
}, value)
}
}
ES6版本
const compose = (...args) => value => args.reverse().reduce((acc, fn) => fn(acc), value)
测试
const f = compose(toUpper, first, reverse)
console.log(f(['one', 'two']))
学无止境,谦卑而行.