在本教程中,您将学习如何使用 JavaScript Object.values()
方法访问对象自身的可枚举属性。
在 ES2017 之前,您可以使用 for...in
循环和 Object.hasOwnProperty()
方法来访问对象自身的可枚举属性的值。例如:
const person = {
firstName: 'John',
lastName: 'Doe',
age: 25
};
for (const key in person) {
if (person.hasOwnProperty(key)) {
const value = person[key];
console.log(value);
}
}
输出:
John
Doe
25
ES2017 引入新方法 Object.values()
,它允许您返回对象自身可枚举属性值的数组。
下面展示了 Object.values()
方法的使用语法:
Object.values(obj)
Object.values()
接受一个对象并将它自己的可枚举属性的值作为数组返回。请参阅以下示例:
const person = {
firstName: 'John',
lastName: 'Doe',
age: 25
};
const profile = Object.values(person);
console.log(profile);
输出:
[ 'John', 'Doe', 25 ]
Object.values() 与 for...in
for...in
循环不只是迭代对象自身可枚举属性,还包括原型链的可枚举属性,而Object.values()
返回自己的可枚举属性。
从技术上讲,如果您将 for...in
循环与 Object.hasOwnProperty()
方法一起使用,您将获得与 Object.values()
一样的效果。