如何使程序等待javascript中的变量? [英] How can I make a program wait for a variable change in javascript?
本文介绍了如何使程序等待javascript中的变量?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想强制JavaScript程序在其执行的某些特定点等待,直到变量发生变化。有办法吗?我已经找到了一个名为叙事JavaScript的扩展,它强制程序等到事件发生。有没有办法创建一个新事件,例如行为类似onclick事件的变量事件。
I want to force a JavaScript program to wait in some particular points of its execution until a variable has changed. Is there a way to do it? I have already found an extension that is called "narrative JavaScript" that force the program to wait until an event to happen. Is there a way to create a new event, a "variable change event" for example that behaves like onclick event..
推荐答案
编辑2018:请查看对象getter and setters 和代理 即可。下面的旧答案:
Edit 2018: Please look into Object getters and setters and Proxies. Old answer below:
快速简便的解决方案如下:
a quick and easy solution goes like this:
var something=999;
var something_cachedValue=something;
function doStuff() {
if(something===something_cachedValue) {//we want it to match
setTimeout(doStuff, 50);//wait 50 millisecnds then recheck
return;
}
something_cachedValue=something;
//real action
}
doStuff();
这篇关于如何使程序等待javascript中的变量?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文