DefineProperty 和 Proxy的区别

1、Object.defineProperty 是 ES5 的方法,Proxy 是 ES6 的方法
2、DefineProperty 不能监听到数组下标变化和对象新增属性,Proxy可以
3、DefineProperty 是劫持对象属性,Proxy是代理整个对象
4、DefineProperty 局限性大,只能针对单属性监听,所以在一开始就要全部递归监听。Proxy对象嵌套属性运行时递归,用到才代理,也不需要维护特别多的依赖关系,性能提升很大,且首次渲染更快
5、DefineProperty 会污染源对象,修改时是修改源对象。Proxy是对原对象进行代理并返回一个新的代理对象,修改的是代理对象
6、DefineProperty 不兼容IE8,Proxy不兼容IE11

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值