(es6学习笔记04)用Proxy进行预处理

Proxy的基本形式,
第一个花括号代表方法主体,第二个代表Proxy代理处理区域(相当于钩子函数)
new Proxy({},{})
get属性是在得到某对象属性值时预处理的方法,接收三个参数
1、target:得到的目标值
2、key:目标的key值相当于对象的属性
3、property:不常用用法未学习,
set属性,是值你要改变Proxy属性值时,进行的预先处理
1、target目标值
2、key目标值
3、value要改变的值
4、receiver改变前的原始值
var pro = new Proxy({
    add: function (val) {
        return val + 10;
    },
    name: 'I am Jspang'
}, {
    get: function (target, key, property) {
        //console.log(property);
        return target[key];
    },
    set:function (target,key,value,receiver) {
        console.log(`   setting ${key} = ${value}`);
        return target[key] = value;
    }
});
console.log(pro.add(1));
console.log(pro.name);
pro.name='小哈哈';
console.log(pro.name);
 

猜你喜欢

转载自www.cnblogs.com/xiaohaha668/p/10656853.html