直接调用方法和使用'.call'方法之间的区别? JS

时间:2013-11-07 09:09:37

标签: javascript callback prototype

以这种方式调用方法的javascript有什么不同

_callback.call(this, "mystring");

而不是

_callback("mystring");

编辑: 如果我不需要上下文,或者我对我所处的那个人很好,我可能会说这样做是没用的吗?

2 个答案:

答案 0 :(得分:2)

call允许您为被调用函数内的this指定不同的值。

第一个例子是在调用它的函数中this的任何上下文中调用的。

第二个示例在默认对象的上下文中调用(在window的浏览器中,或在严格模式下为undefined

答案 1 :(得分:1)

你可以在用'call'调用函数时设置上下文,即在函数'this'中指的是哪个对象。

有关详细信息,请查看以下链接:

http://hangar.runway7.net/javascript/difference-call-apply