运行 每次值变化时函数 Javascript
Run function each time value changes Javascript
我想记录滚动,但每次我 运行 这段代码我每秒都会获取值(或者按照间隔设置的频率)。我想要一种方法,这样我就可以在值发生变化时记录日志,而不是每秒获取一次。
var red, black;
function mainOnRed() {
switch (checkMainOnRed()) {
case "red":
console.log("Black");
break;
case "black":
console.log("Red");
break;
}
};
function checkMainOnRed() {
if (currentColor == "black" && rowSet.length == 2) {
return "red";
} else {
return "black";
}
}
setInterval(mainOnRed, 1000);
值:
currentColor
和
rowSet
在脚本的其他部分定义。
这完全取决于何时设置currentColor
。
如果它是在一个事件上设置的,您只需为每个更改该变量值的事件调用 mainOnRed
。
我会这样做:
var red, black, lastColor;
function mainOnRed() {
var color = checkMainOnRed();
if (color != lastColor) {
console.log(color);
lastColor = color;
};
};
function checkMainOnRed() {
if (currentColor == "black" && rowSet.length == 2) {
return "red";
} else {
return "black";
}
}
setInterval(mainOnRed, 1000);
我想记录滚动,但每次我 运行 这段代码我每秒都会获取值(或者按照间隔设置的频率)。我想要一种方法,这样我就可以在值发生变化时记录日志,而不是每秒获取一次。
var red, black;
function mainOnRed() {
switch (checkMainOnRed()) {
case "red":
console.log("Black");
break;
case "black":
console.log("Red");
break;
}
};
function checkMainOnRed() {
if (currentColor == "black" && rowSet.length == 2) {
return "red";
} else {
return "black";
}
}
setInterval(mainOnRed, 1000);
值:
currentColor
和
rowSet
在脚本的其他部分定义。
这完全取决于何时设置currentColor
。
如果它是在一个事件上设置的,您只需为每个更改该变量值的事件调用 mainOnRed
。
我会这样做:
var red, black, lastColor;
function mainOnRed() {
var color = checkMainOnRed();
if (color != lastColor) {
console.log(color);
lastColor = color;
};
};
function checkMainOnRed() {
if (currentColor == "black" && rowSet.length == 2) {
return "red";
} else {
return "black";
}
}
setInterval(mainOnRed, 1000);