Proxy与Object.defineProperty区别


Proxy 与Object.defineProperty


缺点:Object.defineProperty的缺陷,无法监听数组变化。

vue的hack实现:定义更改数组方法字段 ['push','pop','shift','unshift','splice','sort','reverse'],经过判断实现。

区别

Proxy可以直接监听对象而非属性

Proxy直接可以劫持整个对象,并返回一个新对象,不管是操作便利程度还是底层功能上都远强于Object.defineProperty。

Proxy可以直接监听数组的变化

Proxy有多达13种拦截方法,不限于apply、ownKeys、deleteProperty、has等等是Object.defineProperty不具备的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 概述 JavaScript 原生提供Object对象(注意起首的O是大写) JavaScript 的所有其他对象都...
    Dec停云阅读 2,087评论 2 1
  • Jquery中发送ajax的重构(组件化思想) 一、背景以前自己做的一些Web应用,基本上都是按照非常传统的方式:...
    张机智_0fe3阅读 1,684评论 0 0
  • 原文:https://blog.csdn.net/ZhenGangLiu/article/details/8098...
    追寻1989阅读 4,196评论 0 0
  • 一步步带你实现web全景看房——three.js canvas画2d相信大家都很熟悉了,但3d世界更加炫酷。我们直...
    Jiao_0805阅读 3,923评论 0 0
  • JS之Promise(2) Promise 的状态实例化的 Promise 有三个状态:Fulfilled: ha...
    悠悠前端仔阅读 1,634评论 0 1

友情链接更多精彩内容