我正在寻找jQuery源代码然后我看到他们使用foo.call(context)而不是context.foo().
例如 - 假设this是他们使用的数组:
return slice.call( this );
Run Code Online (Sandbox Code Playgroud)
代替:
return this.slice();
Run Code Online (Sandbox Code Playgroud)
有什么区别,是否是这些电话的首选方式(在性能方面)?
问题是"foo"实际上可能不是"上下文"的属性.在这种情况下,唯一真正的选择是使用.call()(或.apply()酌情).
如果你有一个具有"foo"属性的对象是一个函数,那么没有真正的理由可以使用.call().
| 归档时间: |
|
| 查看次数: |
165 次 |
| 最近记录: |