В этом руководстве вы узнаете, как использовать метод 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
Object.values() возвращает собственные перечисляемые свойства, в то время как цикл for...in перебирает свойства в цепочке прототипов.
Технически, если вы используете цикл for...in с Object.hasOwnProperty(), вы получите тот же набор значений, что и Object.values().
