首页 > 其他 > 详细

ES6 用proxy进行预处理

时间:2018-09-15 13:31:42      阅读:175      评论:0      收藏:0      [点我收藏+]
//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进行预处理

原文:https://www.cnblogs.com/NeryXJ/p/9650720.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!