這幾天一直在想如何監控json數據的修改,嘗試了很多方法,都不理想。
因爲我要做的監控,是動態的,字段是未知的,甚至是實時添加的。
今天終於看到ES6版本中引入了proxy這個概念,讓我看到一線曙光。
於是迅速的寫了個簡單的測試代碼:
let tt = new Proxy({}, {
get: function (obj, prop, value) {
alert(obj[prop]);
return obj[prop];
},
set: function (obj, prop, value) {
if (obj[prop] != value) {
alert(prop + '|' + value);
obj[prop] = value;
}
return true;
}
});
tt.abc = 100;
console.log(tt.abc);
竟然就這樣搞定了
大愛js,越來越愛js了