Object.watch:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/watch
Object.observe:http://wiki.ecmascript.org/doku.php?id=harmony:observe
他们似乎都在高层做同样的事情.它们之间有什么显着差异?
最佳答案 有很多不同.
Microtasks vs同步回调
一个区别是Object.observe在您进入消息循环时进行回调.即对对象的许多更改会导致单个回调包含所有更改而不是多个回调.
当听取DOM的变化时,由于同样的原因,突变事件被突变观察者所取代.微任务解决方案比同步回调更具性能.
标准与非标准
此外,Object.observe是Ecmascript 7的建议Ecmascript标准.它是一个提议的Javascript标准.
意图
Object.observe旨在作为监视整个对象更改的高效方法,并且用例预计需要监听许多对象.这是绑定框架(即客户端模板)的要求,例如AngularJs和Polymer. Object.watch更像是一种用于监视特定属性的Firefox功能,它是从调试器功能中产生的.