Reflect

ES6新特征 - Reflect

本节课介绍了ES6新特征中Reflect的基本概念与常见的静态方法。

2021-01-25侠课岛    初级拔高       

前端/前端/前端系列课程P2 16     0     1196

(五十九)ES6新特征 - Reflect

1:基本概念

  • 内置的对象, 提供拦截 JavaScript 操作的方法
  • 将部分属于语言内部的方法转移到Reflect - defineProperty
  • 优化了部分函数的返回结果
  • 调用风格上倾向于函数式编程
  • 保留对象的默认行为 - Proxy
  • 没有构造函数, 所有属性方法都为静态 - 类似Math

2:静态方法

  • get - 取值操作, 不存在返回undefined
  Reflect.get(target, propertyKey[, receiver]);
  • 内部this绑定receiver
  var object1 = {
    a: 1,
    b: 2,
    get c() {
      return this.a + this.b;
    },
  };

  var object2 = {
    a: 4,
    b: 4,
  };

  Reflect.get(object1, 'c');
  /* 3 */
  Reflect.get(object1, 'c', object2);
  /* 8 */
  • set - 赋值操作
  Reflect.set(target, propertyKey, value[, receiver]);
  • 内部this绑定receiver
  var object1 = {
    a: 1,
    set b(value) {
      return this.a = value;
    },
  };

  var object2 = {
    a: 0,
  };

  Reflect.set(object1, 'b', 2, object2);
  object1.foo
  /* 1 */
  object2.foo;
  /* 2 *

本教程图文或视频等内容版权归侠课岛所有,任何机构、媒体、网站或个人未经本网协议授权不得转载、转贴或以其他方式复制发布或发表。

评价

16

本课评分:
  •     非常好
难易程度:
  •     适中的

内容目录


本文索引


|
教程
粉丝
主页

签到有礼

已签到2天,连续签到7天即可领取7天全站VIP

  • 1
    +2 金币
  • 2
    +3 金币
  • 3
    +5 金币
  • 6
    +7 金币
  • 5
    +6 金币
  • 4
    暖心福利
    自选分类VIP ×1天
  • 7
    惊喜大礼

    自选分类VIP ×3天 +20金币
  • 持续签到 +8 金币

金币可以用来做什么?