红宝书专门提到了这一章节。
傀儡?
代理的存在,可以用作目标对象的替身,又完全独立于目标对象。
有了代理,操作目标对象,可以通过操作目标对象自身、代理来操作,绕过代理会少行为。
TODO 这里可以引入一个 MDN链接,其中vue3的底层原理也可以贴一下
Proxy
语法实践
虽然是 new Proxy
,但是 Proxy.prototype
是 undefined,是空的,因此也就不存在实例化、instanceof 相关概念。
基础语法 Gitee
打印 proxy 变量
代码分多个部分,可以自由复制执行
手写捕获器也就是handler的过程,可以用 Reflect
对象来操作。
代理可被阻止、可撤销,基础操作见基础语法。
在处理this/Date 时候会有限制。