如何使程序等待javascript中的变量? [英] How can I make a program wait for a variable change in javascript?

查看:850
本文介绍了如何使程序等待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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆