Object.keys() 方法会返回一个由一个给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用 for...in 循环遍历该对象时返回的顺序一致 。
传入对象, 返回 包含对象可枚举属性和方法的数组
var obj = {'name': 'xiaoming', 'age': 18};
console.log(Object.keys(obj)); // ["name","age"]
传入字符串,返回索引值
var str = "Beijing";
console.log(Object.keys(str));
// ["0", "1", "2", "3", "4", "5", "6"]
传入数组,返回索引值
var arr = ["a", "b", "c"];
console.log(Object.keys(arr));
//["0", "1", "2"]
构造函数,返回空数组或者属性名
function Demo(name, age) {
this.name = name;
this.age = age;
}
console.log(Object.keys(Demo));
// []