阿西河

所有教程

公众号
🌙
阿西河前端的公众号

我的收藏

    最近访问  (文章)

      教程列表

      抓包专区
      测试专区

      JS Reflect.ownKeys()

      静态方法 Reflect``.ownKeys() 返回一个由目标对象自身的属性键组成的数组。

      The source for this interactive example is stored in a GitHub repository. If you’d like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.

      语法

      Reflect.ownKeys(target)
      
      

      参数

      target

      获取自身属性键的目标对象。

      返回值

      由目标对象的自身属性键组成的 Array。 

      异常

      如果目标不是 Object,抛出一个 TypeError

      描述

      Reflect.ownKeys 方法返回一个由目标对象自身的属性键组成的数组。它的返回值等同于[`Object.getOwnPropertyNames`](/api/js-es/ob-object/get-own-property-names.html "方法返回一个由指定对象的所有自身属性的属性名(包括不可枚举属性但不包括Symbol值作为名称的属性)组成的数组。")(target).concat([`Object.getOwnPropertySymbols`](/api/js-es/ob-object/get-own-property-symbols.html "方法返回一个给定对象自身的所有 Symbol 属性的数组。")(target))。

      示例

      使用 Reflect.ownKeys()

      Reflect.ownKeys({z: 3, y: 2, x: 1}); // [ "z", "y", "x" ]
      Reflect.ownKeys([]); // ["length"]
      
      var sym = Symbol.for("comet");
      var sym2 = Symbol.for("meteor");
      var obj = {[sym]: 0, "str": 0, "773": 0, "0": 0,
                 [sym2]: 0, "-1": 0, "8": 0, "second str": 0};
      Reflect.ownKeys(obj);
      // [ "0", "8", "773", "str", "-1", "second str", Symbol(comet), Symbol(meteor) ]
      // Indexes in numeric order, 
      // strings in insertion order, 
      // symbols in insertion order
      
      

      规范

      SpecificationStatusComment
      ECMAScript 2015 (6th Edition, ECMA-262)Reflect.ownKeysStandardInitial definition.
      ECMAScript Latest Draft (ECMA-262)Reflect.ownKeysDraft 

      相关链接

      目录
      目录