Object.values()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Die statische Methode Object.values() gibt ein Array mit den eigenen aufzählbaren, string-schlüsselbasierten Eigenschaftswerten eines gegebenen Objekts zurück.

Probieren Sie es aus

const object1 = {
  a: "somestring",
  b: 42,
  c: false,
};

console.log(Object.values(object1));
// Expected output: Array ["somestring", 42, false]

Syntax

js
Object.values(obj)

Parameter

obj

Ein Objekt.

Rückgabewert

Ein Array, das die eigenen aufzählbaren, string-schlüsselbasierten Eigenschaftswerte des gegebenen Objekts enthält.

Beschreibung

Object.values() gibt ein Array zurück, dessen Elemente die Werte der aufzählbaren, string-schlüsselbasierten Eigenschaften sind, die direkt auf dem Objekt gefunden werden. Dies entspricht dem Iterieren mit einer for...in-Schleife, mit dem Unterschied, dass eine for...in-Schleife auch Eigenschaften in der Prototyp-Kette auflistet. Die Reihenfolge des von Object.values() zurückgegebenen Arrays ist identisch mit der, die von einer for...in-Schleife bereitgestellt wird.

Wenn Sie die Eigenschaftsschlüssel benötigen, verwenden Sie Object.keys(). Wenn Sie sowohl die Eigenschaftsschlüssel als auch die Werte benötigen, verwenden Sie Object.entries().

Beispiele

Verwendung von Object.values()

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

// Array-like object
const arrayLikeObj1 = { 0: "a", 1: "b", 2: "c" };
console.log(Object.values(arrayLikeObj1)); // ['a', 'b', 'c']

// Array-like object with random key ordering
// When using numeric keys, the values are returned in the keys' numerical order
const arrayLikeObj2 = { 100: "a", 2: "b", 7: "c" };
console.log(Object.values(arrayLikeObj2)); // ['b', 'c', 'a']

// getFoo is a non-enumerable property
const myObj = Object.create(
  {},
  {
    getFoo: {
      value() {
        return this.foo;
      },
    },
  },
);
myObj.foo = "bar";
console.log(Object.values(myObj)); // ['bar']

Verwendung von Object.values() bei Primitiven

Nicht-Objekt-Argumente werden zu Objekten konvertiert. undefined und null können nicht zu Objekten konvertiert werden und werfen sofort einen TypeError. Nur Strings können eigene aufzählbare Eigenschaften haben, während bei allen anderen Primitiven ein leeres Array zurückgegeben wird.

js
// Strings have indices as enumerable own properties
console.log(Object.values("foo")); // ['f', 'o', 'o']

// Other primitives except undefined and null have no own properties
console.log(Object.values(100)); // []

Spezifikationen

Specification
ECMAScript® 2025 Language Specification
# sec-object.values

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
values

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

Siehe auch