下面两种函数调用有啥不同?
发布于 10 年前 作者 kingapple 3644 次浏览 最后一次编辑是 8 年前
(function(){}.call(this))

(function(){})(this)
8 回复

上面的this用于绑定当前环境 下面的this是个普通参数

@ravenwang

(function(){}.call(this))是否等价于下面这俩货呢:)

(function(){})(window)
(function(){})(global)

@kingapple .bind() 的用法不是参数, 而是强制设定 this

@jiyinyiyong bind?这里是call。。。

@kingapple 这个看你上下文的this本来是那个。

@hzbqjltx 可否弄个例子?

@kingapple …我神游了 f(a) 对应的是 f.call(window, a) x.f(a) 对应的是 x.f.call(x, a)

回到顶部