Object.values()

Метод Object.values() вертає масив значень всіх особистих (не успадкованих) перелічуваних властивостей переданого об'єкта. Порядок властивостей в масиві є тим самим, що й у циклі for...in (різниця лише в тому, що цикл обходить також і властивості прототипу).

Синтаксис

Object.values(obj)

Параметри

obj
Об'єкт, значення властивостей якого треба отримати.

Повертає

Масив значень всіх особистих властивостей переданого об'єкта.

Опис

Object.values() повертає масив значень властивостей, які належать безпосередньо об'єктові obj. Порядок отриманих властивостей збігається із тим, що його забезпечує перебір через for...in.

Приклади

var obj = { foo: 'bar', baz: 42 };
console.log(Object.values(obj));  // ['bar', 42]

// подібний до масиву об'єкт
var obj = { 0: 'a', 1: 'b', 2: 'c' };
console.log(Object.values(obj));  // ['a', 'b', 'c']

// подібний до масиву об'єкт з випадковим порядком ключів
var an_obj = { 100: 'a', 2: 'b', 7: 'c' };
console.log(Object.values(an_obj));  // ['b', 'c', 'a']

// властивість getFoo є неперелічуваною
var my_obj = Object.create({}, { getFoo: { value: function() { return this.foo; } } });
my_obj.foo = 'bar';
console.log(Object.values(my_obj)); // ['bar']

// аргументи, що не є об'єктами, буде перетворені на об'єкти
console.log(Object.values('foo'));  // виводить ['f', 'o', 'o']

Запасний варіант (поліфіл)

Для старіших середовищ, де метод Object.values() відсутній, можна скористатися запасним варіантом з репозиторіїв tc39/proposal-object-values-entries або es-shims/Object.values.

Специфікації

Специфікація Статус Коментар
ECMAScript (ECMA-262)
The definition of 'Object.values' in that specification.
Living Standard
ECMAScript 2017 (ECMA-262)
The definition of 'Object.values' in that specification.
Standard Первинне визначення.

Підтримка веб-переглядачами

BCD tables only load in the browser

Див. також