题源
百度技术一面
题目
柯里化实现累加函数
解答
function createCurry(func, args) {
var arity = func.length;
var args = args || [];
var fn = function () {
var args_fn = [].slice.call(arguments);
args = args.concat(args_fn);
if (args.length < arity) {
return createCurry.call(this, func, args);
}
return func.apply(this, args);
}
return fn;
}
function sum(a, b, c) {
return a + b + c;
}
var newsum = createCurry(sum)
console.log(newsum(11)(14)(12));
网友评论