Die Methode Object.values() gibt ein Array mit den Eigenschaftswerten eines gegebenen Objekts in der selben Reihenfolge wie eine for...in-Schleife sie geben würde zurück (Der Unterschied ist dabei, dass eine for-in Schleife zusätzlich die Eigenschaften der Protoype-Kette aufzählt).
Syntax
Object.values(obj)
Parameter
obj- Ein Objekt, dessen Eigenschaftswerte zurück gegeben werden sollen.
Rückgabewert
Ein Array, welches die Eigenschaftswerte eines gegebenen Objekts enthält.
Beschreibung
Object.values() gibt ein Array zurück, dessen Elemente mit den Werten der Eigenschaften eines gegebenen Objekts übereinstimmen. Die Reihenfolge der Eigenschaften ist die selbe, wie sie sich bei einem manuellen Durchlauf über die Eigenschaften ergeben würde.
Beispiele
var obj = { foo: 'bar', baz: 42 };
console.log(Object.values(obj)); // ['bar', 42]
// Array-ähnliches Objekt
var obj = { 0: 'a', 1: 'b', 2: 'c' };
console.log(Object.values(obj)); // ['a', 'b', 'c']
// Array-ähnliches Objekt mit zufälliger Sortierung der Eigenschaften
var an_obj = { 100: 'a', 2: 'b', 7: 'c' };
console.log(Object.values(an_obj)); // ['b', 'c', 'a']
// getFoo ist eine nicht aufzählbare Eigenschaft
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']
Polyfill
Um Object.values auch in älteren Umgebungen zu nutzen, die diese Methode nicht nativ unterstützen, können Sie ein Polyfill im tc39/proposal-object-values-entries oder im es-shims/Object.values Repository finden.
Spezifikationen
| Specifikation | Status | Kommentar |
|---|---|---|
| ECMAScript Latest Draft (ECMA-262) Die Definition von 'Object.values' in dieser Spezifikation. |
Entwurf | Erste Definition. |
| ECMAScript 2017 (ECMA-262) Die Definition von 'Object.values' in dieser Spezifikation. |
Standard |
Browser Kompatibilität
| Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|---|
| Basic support | 54 | (Ja) | 47 (47) | Nicht unterstützt | (Ja) | 10.1 |
| Feature | Android Webview | Chrome for Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|---|
| Basic support | 54 | 54 | (Ja) | 47.0 (47) | Nicht unterstützt | (Ja) | 10.3 |
Siehe auch