В процессе перевода.
Это экспериментальная технология
Так как спецификация этой технологии ещё не стабилизировалась, смотрите таблицу совместимости по поводу использования в различных браузерах. Также заметьте, что синтаксис и поведение экспериментальной технологии может измениться в будущих версиях браузеров, вслед за изменениями спецификации.
Метод Object.values() возвращает массив значений перечисляемых свойств объекта в том же порядке что и цикл
for...in
.
Синтаксис
Object.values(obj)
Параметры
obj
- Объект, чьи значения перечисляемых свойств будут возвращены.
Возвращаемое значение
Массив содержащий значения перечисляемых свойств объекта
.
Описание
Object.values()
возвращает массив, чьи элементы это значения перечисляемых свойств найденых в объекте. Порядок такой же как если пройтись по объекту циклом вручную.
Примеры
var obj = { foo: "bar", baz: 42 }; console.log(Object.values(obj)); // ['bar', 42] // array like object var obj = { 0: 'a', 1: 'b', 2: 'c' }; console.log(Object.values(obj)); // ['a', 'b', 'c'] // array like object with random key ordering var an_obj = { 100: 'a', 2: 'b', 7: 'c' }; console.log(Object.values(an_obj)); // ['b', 'c', 'a'] // getFoo is property which isn't enumerable var my_obj = Object.create({}, { getFoo: { value: function() { return this.foo; } } }); my_obj.foo = "bar"; console.log(Object.values(my_obj)); // ['bar'] // non-object argument will be coerced to an object console.log(Object.values("foo")); // ['f', 'o', 'o']
Полифилл
Для добавления совместимости Object.values
со старым окружением, которое не поддерживает нативно его, вы можете найти полифилл здесь tc39/proposal-object-values-entries или в es-shims/Object.values репозитарии.
Спецификации
Specification | Status | Comment |
---|---|---|
ECMAScript 2017 Draft (ECMA-262) Определение 'Object.values' в этой спецификации. |
Черновик | Изначальное определение. |
Совместимость с браузерами
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Базовая поддержка | 51.0 [1] | 47 (47) | Нет | Нет | Нет [2] |
Feature | Android | Android Webview | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile | Chrome for Android |
---|---|---|---|---|---|---|---|
Базовая поддержка | Нет | 51.0 [1] | 47.0 (47) | Нет | Нет | Нет | 51.0 [1] |
[1] Behind a flag.
[2] See bug 150131.