Object.keys() 方法会返回一个由一个给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用 for…in 循环遍历该对象时返回的顺序一致 。如果对象的键-值都不可枚举,那么将返回由键组成的数组
var arr = ['cc', 'zz', 'ss'];
console.log(Object.keys(arr)); // ['0', '1', '2']
var obj = { 0: 'cc', 1: 'zz', 2: 'ss' }
console.log(Object.keys(arr)); // ['0', '1', '2']
var anObj = { 100: 'cc', 2: 'zz', 7: 'ss' };
console.log(Object.keys(anObj)); // ['2', '7', '100']
var obj2 = Object.create({}, { getFoo : { value : function () { return this.foo } } });
obj2.foo = 1;
console.log(Object.keys(obj2)); // ["foo"]
var str = 'cc123'
console.log(Object.keys(str)); //[0,1,2,3,4]