观察一个对象是否已经改变
每当一个对象发生变化时,是否可以执行一些代码?
var a = {x: 12, y: 63}; a.watch(function () { console.log('The object has changed!'); }); ax = 16; // The object has changed! ay = 1; // The object has changed!
它似乎只在Firefox上可用: https : //developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/watch
在JavaScript / node.js中如何实现这一点? (如果可能,不使用getter / setter方法)
您可以使用对象观察 …它是实验性的,请谨慎行事
var obj = { foo: 0, bar: 1 }; Object.observe(obj, function(changes) { console.log(changes); }); obj.baz = 2;