1. Proxy 简单介绍
Proxy 对象用于定义基本操作的自定义行为(如属性查找,赋值,枚举,函数调用等)
- Proxy 之 get 和 set 简单使用
var oData = {
name: "tzh"
};
var pro = new Proxy(oData, {
set(target, key, value, receiver) { //设置值时调用的函数 (pro.name = 100)
console.log(target, key, value, receiver) // 打印结果如下图
Reflect.set(target,key,value) // 使用 Reflect 设置值
},
get(target, key, receiver) { // 取值时调用的函数 (pro.name)
console.log(target, key, receiver) // 打印结果如下图
return Reflect.get(target, key); //使用 Reflect 取值
},
has(target, key) {// 使用 in 操作时调用的函数 ('_good' in pro)
return key.indexOf("_good") != -1 ? true : key in oData;
}
})