function curry(...args) {
let parmas = args
function sum() {
parmas = [...parmas, ...arguments]
return sum
}
sum.toString = function () {
return parmas.reduce((prev, cur) => {
return prev + cur
})
}
return sum
}
console.log(curry(1)(2)(3)(10)(10, 20).toString())
前端经典面试题
柯里化函数 将求累加和的函数sum(a,b,c,d)转化成可以无限调用的sum(a)(b)©(d)…