vue3的数据劫持:
1.数据劫持 。 2、观察者 。 3、数据解析 {{}}指定 dif对象 -dom
关于Proxy的官方文档:
proxy要中的两个参数
1,要操作的对象 要使用 Proxy
包装的目标对象(可以是任何类型的对象,包括原生数组,函数,甚至另一个代理)。
2,一个通常以函数作为属性的对象,各属性中的函数分别定义了在执行各种操作时代理 p
的行为。
举例 getter:
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Proxy/Proxy/get
get中的三个参数:
target
目标对象。
property
被获取的属性名。
receiver
Proxy或者继承Proxy的对象
关于setter语法:
const p = new Proxy(target, {
set: function(target, property, value, receiver) {
}
});
参数
以下是传递给 set() 方法的参数。this 绑定在 handler 对象上。
target
目标对象。
property
将被设置的属性名或 Symbol。
value
新属性值。
receiver
最初被调用的对象。通常是 proxy 本身,但 handler 的 set 方法也有可能在原型链上,或以其他方式被间接地调用(因此不一定是 proxy 本身)。