5、Object.defineProperty 和 Proxy 的区别(必会)
Object.defineProperty 和 Proxy 的区别如下:
1、Proxy 可以直接监听对象而非属性。
2、Proxy 可以直接监听数组的变化。
3、Proxy 有多达 13 种拦截方法,不限于 apply、ownKeys、deleteProperty、has 等等是Object.defineProperty 不具备的。
4、Proxy 返回的是一个新对象,我们可以只操作新的对象达到目的,而Object.defineProperty 只能遍历对象属性直接修改。
5、Proxy 作为新标准将受到浏览器厂商重点持续的性能优化,也就是传说中的新标准的性能红利。
6、Object.defineProperty 兼容性好,支持 IE9,而 Proxy 的存在浏览器兼容性问题,而且无法用 polyfill 磨平,因此 Vue 的作者才声明需要等到下个大版本( 3.0 )才能用 Proxy 重写。
相关文章
- Shell中针对字符串的切片,截取,替换,删除,大小写操作
- Python学不会来打我(8)字符串string类型深度解析
- TS类型体操,看懂你就能玩转TS了_ts l
- 你只会用 split?试试 StringTokenizer,性能可以快 4 倍
- 2025-08-22:最短匹配子字符串。用go语言,给定两个字符串 s 和 p,
- case when语句增加_case when加条件
- 一次完整的HTTP请求与响应涉及了哪些知识?
- Excel超链接点击无反应及安全提示问题
- Java 判断对象是否所有属性为空,大家觉得这样写可以吗?
- Spring事物(@transactional注解)在什么情况下会失效,为什么?