reflect调用对象的基本操作(内部方法)
const obj = {};
obj.name = "test";
Reflect.set(obj, 'name', 'reflect')
console.log(obj.name) // reflect
直接传参过去
const obj = {
a: 1,
b: 2,
get c() {
return this.a + this.b;
},
};
// 修改函数内部this的指向,直接传参过去
const data = Reflect.get(obj, "c", { a: 3, b: 4 })
console.log(data);
修改proxy的this指向
const proxy = new Proxy(obj, {
get(target, key) {
console.log(target, key);
return Reflect.get(target, key, proxy);
},
});