• 35648

    文章

  • 23

    评论

  • 20

    友链

  • 最近新加了很多技术文章,大家多来逛逛吧~~~~
  • 喜欢这个网站的朋友可以加一下QQ群,我们一起交流技术。

ES6之Proxy & Reflection API

欢迎来到阿八个人博客网站。本 阿八个人博客 网站提供最新的站长新闻,各种互联网资讯。 喜欢本站的朋友可以收藏本站,或者加QQ:我们大家一起来交流技术! URL链接:https://www.abboke.com/jsh/2019/0729/102635.html 1190000019899113

Proxy & Reflect

extends的出现,使用内建对象的继承得以实现。Proxy可以拦截JS引擎内部目标的底层对象操作,这些底层操作被拦截后会触发响应特定操作的陷阱函数(traps),对于别人封装好的对象或内建对象,都可以自定义操作。
而反射(Reflect)API是以Reflect对象的形式出现的。API中的默认特征与相同的底层操作是一致的,而通过代理可以重写这些操作,每个代理Trap,对应一个命名和参数值都相同的Reflect方法。
Reflect 中所有方法及说明--MDN

const target = {};
const proxy = new Proxy(target, {});
proxy.title = 'proxy';
console.log(proxy.title);
console.log(target.title);

target.title = 'target';
console.log(target.title);
console.log(proxy.title);

非常简单的Proxy,没有实现任何自定义的Trap 方法,都是默认实现。

GET Trap

SET Trap

Has Trap

deleteProperty Trap

原型 Trap

可扩展 Trap

属性描述符

ownKeys

apply & construct

在原型上进行Proxy应用

看来要等到下周才能完成了。

相关文章

暂住......别动,不想说点什么吗?
  • 全部评论(0
    还没有评论,快来抢沙发吧!