gpt4 book ai didi

javascript - 使用 window.setInterval 对现有对象执行方法

转载 作者:行者123 更新时间:2023-12-02 20:37:10 25 4
gpt4 key购买 nike

是否可以在 window.setInterval 方法超时时在现有对象上运行该方法。我可以通过使用一些全局变量并在 setInterval 中调用该全局变量的方法来模拟相同的效果,但我想知道是否可以直接使用该方法。

最诚挚的问候,凯沙夫

最佳答案

是的,你可以做到这一点。您需要一个辅助函数来创建一个“绑定(bind)”现有对象的函数:

var someRandomObject = {
someMethod: function() {
// ... whatever
},
// ...
};

// this is a "toy" version of "bind"
function bind(object, method) {
return function() {
method.call(object);
};
}

var interval = setInterval(bind(someRandomObject, someRandomObject.someMethod), 1000);

现在,当间隔计时器调用您的方法(“someMethod”)时,“this”指针将引用该对象。

该版本的“bind”已被简化。 Prototype、Functional、jQuery 等库通常提供更强大的版本。此外,“绑定(bind)”功能有一天将成为 Javascript 的原生部分 - 它已经存在于某些浏览器中。

关于javascript - 使用 window.setInterval 对现有对象执行方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3044478/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com