Ich möchte die Rollen protokollieren, aber jedes Mal, wenn ich diesen Code ausführen, bekomme ich Werte jede Sekunde (oder so oft wie es im Intervall festgelegt ist). Ich möchte einen Weg, so dass ich Log nehmen kann, wann immer sich der Wert ändert, anstatt es jede Sekunde zu bekommen.Funktion jedes Mal ausführen, wenn Wert Änderungen 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);
Werte:
currentColor
und
rowSet
sind in anderen Teilen des Skripts definiert.
Ich bekomme die allgemeine Idee. Obwohl Ihr Code nicht funktioniert, versuchen Sie, was ich denke – Klajdi
Nvm, dachte ich, um den Wert bei Auftreten zu aktuellen Wert zu ändern, und dann überprüfen, ob die Werte übereinstimmten oder nicht, und wenn nicht, überprüfen Sie den aktuellen Wert und ändern Sie es. Aber Ihr Code hat den Trick gemacht, alles, was Sie brauchen, ist 'checkMainOnRed' auf' mainOnRed' auszuführen, damit auch der Wert überprüft wird. 'Funktion mainOnRed() { checkMainOnRed();' Es läuft seit einer Weile jetzt und funktioniert gut, und ich habe es auf einen Wert und nicht auf eine Reihe von Werten (mit 'String' und' html() '(und bei Bedarf' slice() ') anstatt die Funktion in' color' zu verwenden, wenn jemand nach Änderungen an Zeichen sucht. – Klajdi
Ich bin froh, dass ich geholfen habe :) – vasekhlav