Heim >Web-Frontend >js-Tutorial >Wie kann ich Änderungen an JavaScript-Variablen erkennen?
Ursprüngliche Frage:
Gibt es ein Ereignis in JavaScript, das ausgelöst wird, wenn der Wert von eine bestimmte Variable geändert wird? Bitte ziehen Sie Lösungen mit jQuery in Betracht.
Antwort:
Verwendung von Proxy-Objekten:
Ab 2018 bietet das Proxy-Objekt Folgendes ein wirksamer Mechanismus zum Überwachen und Abfangen von Objekteigenschaftenänderungen. Es funktioniert durch die Erstellung eines Proxy-Objekts, das das Zielobjekt umschließt.
var targetObj = {}; var targetProxy = new Proxy(targetObj, { set: function (target, key, value) { console.log(`${key} set to ${value}`); target[key] = value; return true; } }); targetProxy.hello_world = "test"; // console: 'hello_world set to test'
Einschränkungen:
Beobachten verschachtelter Objekte:
Für die Beobachtung von Änderungen in verschachtelten Objekten bieten spezialisierte Bibliotheken wie Observable Slim eine umfassendere Lösung.
var test = {testing:{}}; var p = ObservableSlim.create(test, true, function(changes) { console.log(JSON.stringify(changes)); }); p.testing.blah = 42; // console: [{"type":"add","target":{"blah":42},"property":"blah","newValue":42,"currentPath":"testing.blah",jsonPointer:"/testing/blah","proxy":{"blah":42}}]
Das obige ist der detaillierte Inhalt vonWie kann ich Änderungen an JavaScript-Variablen erkennen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!