Object.keys()

Object.keys(obj) 方法会返回一个由一个给定对象的 自身可枚举属性 组成的数组,数组中属性名的排列顺序和使用 for...in 循环遍历该对象时返回的顺序一致 (两者的主要区别是 一个 for-in 循环还会枚举其原型链上的属性)。

数组

var arr = ['a', 'b', 'c'];
console.log(Object.keys(arr)); // ['0', '1', '2']

类数组对象

var obj = { 0: 'a', 1: 'b', 2: 'c' };
console.log(Object.keys(obj)); // ['0', '1', '2']

对象

var obj = {
  a: 1,
  b: 2,
  c: 3
};
console.log(Object.keys(obj)); // ["a", "b", "c"]

使用 Object.create()

var myObj = Object.create({}, {
  getFoo: {
    value: function () { return this.foo; }
  },
  foo: {
    enumerable: true,
    writable: true,
    configurable: true,
    value: 1
  }
});
console.log(Object.keys(myObj)); // ['foo']

MIT Licensed | Copyright © 2018-present 滇ICP备16006294号

Design by Quanzaiyu | Power by VuePress