JavaScript理论知识

09-02:JS 监听对象属性的改变

2022-05-13  本文已影响0人  小小前端搬运工

JS 监听对象属性的改变

我们假设这里有一个 user 对象,

(1)在 ES5 中可以通过 Object.defineProperty 来实现已有属性的监听

Object.defineProperty(user,'name',{ 

  set:function(key,value){ 

  }

})

缺点:如果 id 不在 user 对象中,则不能监听 id 的变化

(2)在 ES6 中可以通过 Proxy 来实现

var user = new Proxy({},{ 

set:function(target,key,value,receiver){ 

}

})

这样即使有属性在 user 中不存在,通过 user.id 来定义也同样可以这样监听这个属性的变化哦。

上一篇下一篇

猜你喜欢

热点阅读