📅  最后修改于: 2023-12-03 15:03:20.895000             🧑  作者: Mango
在 JavaScript 中,我们经常需要迭代对象的属性,以便执行某些操作。为此,我们可以使用 Object.keys() 方法来获取对象属性的键数组,然后使用 for 循环或 forEach() 方法来迭代它们。ES2017 引入了两个新方法,即 Object.values() 和 Object.entries() ,以进一步简化该过程。
Object.values() 返回一个对象自身可枚举属性的值数组,并按照属性插入顺序排序。
const student = {
name: 'Alice',
age: 20,
grade: 'A'
};
const values = Object.values(student);
console.log(values); // ['Alice', 20, 'A']
Object.entries() 返回一个包含对象自身可枚举属性键值对的数组。数组中每个键值对都表示为 [key, value] 形式的数组。
const student = {
name: 'Alice',
age: 20,
grade: 'A'
};
const entries = Object.entries(student);
console.log(entries); // [['name', 'Alice'], ['age', 20], ['grade', 'A']]
由此看来,两个方法都很有用。Object.values() 返回一个包含对象属性值的数组,然而 Object.entries() 返回一个包含键值对的数组,并且操作起来更加灵活。