Метод 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 Latest Draft (ECMA-262)
The definition of 'Object.values' in that specification.
Draft Первинне визначення.
ECMAScript 2017 (ECMA-262)
The definition of 'Object.values' in that specification.
Standard  

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

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidiOS SafariSamsung InternetNode.js
Basic supportChrome Full support 54Edge Full support 14Firefox Full support 47IE No support NoOpera Full support 41Safari Full support 10.1WebView Android Full support 54Chrome Android Full support 54Edge Mobile Full support YesFirefox Android Full support 47Opera Android Full support 41Safari iOS Full support 10.3Samsung Internet Android Full support 6.0nodejs Full support 7.0.0
Full support 7.0.0
Full support 6.5.0
Disabled
Disabled From version 6.5.0: this feature is behind the --harmony runtime flag.

Legend

Full support  
Full support
No support  
No support
User must explicitly enable this feature.
User must explicitly enable this feature.

Див. також

Мітки документа й учасники

Зробили внесок у цю сторінку: vityas-off, asmforce
Востаннє оновлена: vityas-off,