Ich habe eine "Set" -Funktion erstellt, auf die es während der Wertänderung meines Objekts "myObject.user" ausgelöst wird. Wenn ich also den Wert ändere, werde ich aufmerksam. aber wenn ich den Wert innerhalb des Objekts "myObject.newuser [0] .id" aktualisiere, ruft der Satz nicht auf. Wie man den Code so ändert, dass wenn ein innerer Wert geändert wird, der globale Satz funktionieren sollte. Dh für diesen Code sollte ich zwei Warnungen bekommen.Javascript Setter für den Wert des Objekts
var myObject = {};
myObject.user;
Object.defineProperty(myObject, 'newuser', {
get: function() { return this.user;},
set: function(value) { alert('Updated');this.user=value;}
});
myObject.newuser = [{"id":"user1"}];
myObject.newuser[0].id="user2";
Nun, Sie ändern innere Objekt, die natürlich Setter nicht auslösen wird. Ich empfehle, die Datenstruktur mit Setter-Schnittstelle zu implementieren. Es wäre einfacher. – dfsq