我们使用Object.defineProperty()
函数来实现数据劫持,主要是通过get
和set
两个方法来实现数据劫持,当数据发生改变时触发set方法,当读取某一个属性时,调用的是get方法。不过如果我们想要监听,当判断某一个对象中是否存在某一个属性时(也就是Object.has())方法,此时该如何监听。在ES6中引入了proxy
的概念,其中存在十三中数据劫持的方法。
proxy
的好处是可以完美的监听任何方式的数据改变,缺点是:存在兼容性问题。
使用 Object.defineProperty() 来进行数据劫持有什么缺点?
于 2022-03-04 15:40:27 首次发布