1、Object.keys()
ES5 引入了Object.keys方法,返回一个数组,成员是参数对象自身的(不含继承的)所有可遍历( enumerable )属性的键名。
let obj = { a: 1, b: 2, c: 3 };
console.log(Object.keys(obj)); //[a,b,c]
2、Object.values()
ES5 引入了Object.keys方法,返回一个数组,成员是参数对象自身的(不含继承的)所有可遍历( enumerable )属性的键名。
let obj = { a: 1, b: 2, c: 3 };
console.log(Object.values(obj)); //[1,2,3]
//属性名为数值的属性,是按照数值大小,从小到大遍历的
//如果该方法的参数是一个字符串,返回值为各个字符串组成的一个数组
console.log(Object.values("abc")); //[ 'a', 'b', 'c' ]
3、Object.entries()
Object.entries方法返回一个数组,成员是参数对象自身的(不含继承的)所有可遍历( enumerable )属性的键值对数组。
let obj = { a: 1, b: 2, c: 3 };
console.log(Object.entries(obj)); //[ [ 'a', 1 ], [ 'b', 2 ], [ 'c', 3 ] ]
for (let [x, y] of Object.entries(obj)) {
console.log(x, y);
}
// a 1
b 2
c 3
Object.entries()实现
let obj = { a: 1, b: 2, c: 3 };
for (let e in obj) {
console.log(e, obj[e]);
}
// a 1
b 2
c 3