为什么我们不能调用并应用 setTimeout,
var obj={}
window.setTimeout.call(obj,callback,delay);//it throws error stating illegal invocation
使用起来没有任何意义.call
on setTimeout
since .call
旨在调用一个函数并在调用该函数时为其提供上下文。换句话说,你并不是试图调用设置超时时间提供给它的上下文,你试图调用callback并提供上下文。
为了实现这一点setTimeout
,您可以使用 .bind,如下所示:
var obj={};
window.setTimeout(callback.bind(obj),delay);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)