我创建了一个“set”函数,它将在我的对象“myObject.user”的值更改期间触发。因此,当我更改值时,我会变得警觉。但是当我更新对象“myObject.newuser[0].id”中的值时,该集合没有调用。如何更改代码,以便如果更改任何内部值,则全局集应该可以工作。即对于这段代码,我应该得到两个警报。
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";