○愚か者の日

文章 评论 浏览 31

○愚か者の日 2022-05-04 13:55:59
function currying(fn, length) {
  length = length || fn.length; 	// 注释 1
  return function (...args) {			// 注释 2
    return args.length >= length	// 注释 3
    	? fn.apply(this, args)			// 注释 4
      : currying(fn.bind(this, ...args), length - args.length) // 注释 5
  }
}
const sum = function(t,y,u){
    let args = [].slice.call(arguments)
    return args.reduce((a, b) => a + b)
} ;
    const add = currying(sum);
    console.log(add(1,2)(2)(9)) ;  	// Uncaught TypeError: add(...)(...) is not a function
请问这个调用这个柯里化函数sum中的形参还要自己手动补吗?
我看这个形参少于实际调用add函数时就会报错,还是我调用的方式错了呢?
@yygmind

第 84 题:请实现一个 add 函数,满足以下功能

○愚か者の日 2022-05-04 13:51:30

var myClosure = (function outerFunction() {

var hidden = 1;

return {
    inc: function innerFunction() {
        return hidden++;
    },
    hidden
};

}());
myClosure.inc(); // 返回 1
console.dir(myClosure.inc)
myClosure.inc(); // 返回 2
myClosure.inc(); // 返回 3
console.dir(myClosure.inc)

JavaScript深入之作用域链

更多

推荐作者

櫻之舞

文章 0 评论 0

弥枳

文章 0 评论 0

m2429

文章 0 评论 0

野却迷人

文章 0 评论 0

我怀念的。

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文