Object.keys( ) 会返回一个数组数组中是这个對象的key值列表
Object.keys()
方法会返回一个由一个给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用 循环遍历该对象时返回的顺序一致 (两者的主要区别是 一个 for-in 循环还会枚举其原型链上的属性)
- 要返回其枚举自身属性的对象
一个表示给定对象的所有可枚举属性的芓符串数组。
Object.keys
返回一个所有元素为字符串的数组其元素来自于从给定的object
上面可直接枚举的属性。这些属性的顺序与手动遍历该对象属性時的一致
如果你想获取一个对象的所有属性,,甚至包括不可枚举的请查看。
在ES5里如果此方法的参数不是对象(而是一个原始值),那么它会抛出 TypeError在ES2015中,非对象的参数将被强制转换为一个对象
要在原生不支持的旧环境中添加兼容的Object.keys
,请复制以下代码段:
上面的代码茬IE7(也许IE8也是)下有个问题就是如果传入一个来自其他 window 对象下的对象时,不可枚举的属性也会获取到