Understanding JavaScript's call function
Understanding JavaScript's call function
我试图把我的头围绕调用和在JavaScript中应用函数,我想出了一个设备来帮助我理解他们在做什么,但我想检查它是正确的,然后我把它提交到内存。
设备
x.method.call(y, z)
实际上调用y.method(z)
,而method
只存在于x
。
是否对所有情况都成立?我完全跑题了吗?有没有更好的方式来思考这个问题?
你的解释基本上是正确的,也是一种合理的思考方式。实际发生的是做x.method
没有括号"解除绑定"的功能,并将this
的值更改为window
(或严格模式下的undefined
)。然后在函数参数上调用call
时,将this
的值更改为传递给call
的第一个值。
相关文章:
- Function.prototype.call和Function.protoype.all只应用一个参数
- 局部变量在应用 function.call() 后变为全局变量
- 用(function(){…}).call(this)包装文件,而用简单的()包装调用
- Call a function from a <a> tag in javascript?
- Snippet usefulness - Function.prototype.call.bind(Function.p
- Function.prototype.call.bind 是如何工作的
- 理解 d3.js 源代码:停留在 function.call() 和 “=+”
- JavaScript call() function
- Parametrizable success function for jQuery ajax call
- Advantage of (function() {/*...*/}).call(this);
- 调用带有挂起的 Parens 与 Function.prototype.call 的函数表达式
- 为什么使用 (function(){}).call(this);.
- 了解 Function.call.bind - 循序渐进
- 为什么我们在javascript中有Function.call
- call a javascript function inside<script="text/javas
- 在循环内部调用Function.prototype.call.apply
- 为什么我可以't使用forEach对函数数组使用Function.prototype.call
- 试图理解 js 中的 Function.prototype.call
- Understanding JavaScript's call function
- getBaseURL() javascript call function in a href=""