10、Proxy
我是程序员小白,每天致力于基础语法的反复学习,并通过自己的总结进行记忆!!!
今天学习:Proxy
Proxy 用于修改某些操作的默认行为,等同于在语言层面做出修改,所以属于一种“元编程”(meta programming),即对编程语言进行编程。
Proxy 可以理解成,在目标对象之前架设一层“拦截”,外界对该对象的访问,都必须先通过这层拦截,因此提供了一种机制,可以对外界的访问进行过滤和改写。Proxy 这个词的原意是代理,用在这里表明由它来“代理”某些操作,可以译为“代理器”。属于一个对象对一个对象的拦截操作。
var proxy = new Proxy(target, handler);
其中,new Proxy()表明生成一个Proxy实例,
target参数表明所要拦截的目标对象,
handler参数也是一个配置对象,用来定制拦截行为,对于每一个被代理的操作,需要提供一个对应的处理函数,该函数拦截对应的操作。
handler参数定义了属性的读取(get)和设置(set)行为:
get方法是对拦截对象属性的读取,可以接受三个参数,依次为目标对象:target、属性名:propKey和proxy 实例本身
set方法是对拦截对象属性的设置,可以接受三个参数,依次为目标对象:target、属性名:propKey、属性值:value和proxy 实例本身
var proxy = new Proxy(target, {
get:function(target,propKey,receiver){
},
set:function(target,propKey,value,receiver){
},
});
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...