ES6 用proxy进行预处理

Posted neryxj

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES6 用proxy进行预处理相关的知识,希望对你有一定的参考价值。

//proxy 代理 增强对象和函数(方法) 生命周期 真正方法执行之前预处理
let obj={
    add:function(){
        return val+100;
    },
    name:‘I am jun‘
}
console.log(obj.add(100));
console.log(obj.name);

let pro=new Proxy({
    add:function(){
        return val+100;
    },
    name:‘I am jun‘
},{
    //预处理机
    get:function(target,key,property){
        console.log(target);
        console.log(key);
        console.log(property);
        console.log(‘come in Get‘);
        return target[key];
    },
    set:function(target,key,value,receiver){
        //value是要改变的值
        console.log(‘setting ${key}=${value}‘);
        return target[key]=value+‘111‘;
    }    
});
console.log(pro.name)
pro.name=‘nl‘
console.log(pro.name)

//apply是内部调用的方法
let target=function(){
    return ‘I am from China‘
}
let handler={
    apply(target,ctx,args){
        console.log(‘do apply‘);
        return Reflect.apply(...arguments);
    }
}
//proxy中两个对象
let pro1=new Proxy(target,handler);
console.log(pro1());

 

以上是关于ES6 用proxy进行预处理的主要内容,如果未能解决你的问题,请参考以下文章

ES6系列_13之Proxy进行预处理(简单学习)

ES6 Proxy代理

ES6——Proxy与Reflect

ES6 Proxy和Reflect

ES6中的Proxy

es6之proxy学习