在 JS 对象的方法中,我希望在固定的时间后调用该对象的另一个方法(updateState)。以下是我目前的努力:
setTimeout((function() {
this.updateState("closed")
}).call(this), cycleOpenTime);
由于当前上下文是必要的,我尝试使用 .call 函数传递它,但这似乎破坏了 setTimeout (我认为它不再被视为函数?)。
还有其他方法可以实现这一目标吗?
(如果这有什么不同的话,我正在使用 Node.js)
最佳答案
使用bind Function
原型(prototype)的方法:
setTimeout((function() {this.updateState("closed")}).bind(this), cycleOpenTime);
关于javascript - 如何在保持当前上下文的同时设置超时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20472725/