这样的柯里化实现为什么不 Work?
資深大佬 : vision1900 2
下午尝试自己实现柯里化,写出了如下代码:
这是代码截图: http://realrz.com/curry_not_working.png
function curry(f, params_count) { if ([0, 1].includes(params_count)) return f; const params = []; let result_fuction = f(...params); for (let i = 0; i < params_count; i++) { result_function = function (val) { params.push(val); return result_function; }; } return result_function; } function add1(a, b) { return a + b } function add2(a, b, c) { return a + b + c } const curriedAdd1 = curry(add1, 2); const curriedAdd2 = curry(add2, 3); curriedAdd1(1)(2); // 没有得到 3 curriedAdd2(1)(2)(3); // 没有得到 6
大佬有話說 (14)