[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Object/keys [Back]  [Original]

Object.keys() - JavaScript | MDN

Dieser Inhalt wurde automatisch aus dem Englischen bersetzt, und kann Fehler enthalten. Erfahre mehr ber dieses Experiment.

View in English Always switch to English

Object.keys()

Baseline Weitgehend verfgbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Gerten und in vielen Browserversionen. Sie ist seit Juli 2015 browserbergreifend verfgbar.

Die statische Methode Object.keys() gibt ein Array der eigenen aufzhlbaren, mit String-Schlssel versehenen Eigenschaftsnamen eines gegebenen Objekts zurck.

In diesem Artikel

Probieren Sie es aus

const object = {
  a: "some string",
  b: 42,
  c: false,
};

console.log(Object.keys(object));
// Expected output: Array ["a", "b", "c"]

Syntax

js
Object.keys(obj)

Parameter

obj

Ein Objekt.

Rckgabewert

Ein Array von Strings, die die eigenen aufzhlbaren, mit String-Schlssel versehenen Eigenschaftenschlssel des gegebenen Objekts darstellen.

Beschreibung

Object.keys() gibt ein Array zurck, dessen Elemente Strings sind, die den aufzhlbaren, mit String-Schlssel versehenen Eigenschaftsnamen entsprechen, die direkt auf dem object gefunden werden. Dies ist das Gleiche wie das Iterieren mit einer for...in Schleife, mit dem Unterschied, dass eine for...in Schleife auch Eigenschaften in der Prototyp-Kette aufzhlt. Die Reihenfolge des von Object.keys() zurckgegebenen Arrays ist die gleiche wie die, die von einer for...in Schleife bereitgestellt wird.

Wenn Sie die Eigenschaftswerte bentigen, verwenden Sie stattdessen Object.values(). Wenn Sie sowohl die Eigenschaftsschlssel als auch die Werte bentigen, verwenden Sie stattdessen Object.entries().

Beispiele

Verwendung von Object.keys()

js
// Basic array
const arr = ["a", "b", "c"];
console.log(Object.keys(arr)); // ['0', '1', '2']

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

// Array-like object with random key ordering
const anObj = { 100: "a", 2: "b", 7: "c" };
console.log(Object.keys(anObj)); // ['2', '7', '100']

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

Wenn Sie alle mit String-Schlssel versehenen eigenen Eigenschaften, einschlielich nicht aufzhlbarer, wnschen, siehe Object.getOwnPropertyNames().

Verwendung von Object.keys() mit Primitiven

Nicht-Objekt-Argumente werden zu Objekten gezwungen. undefined und null knnen nicht zu Objekten gezwungen werden und werfen sofort einen TypeError. Nur Strings knnen eigene aufzhlbare Eigenschaften haben, whrend alle anderen Primitiven ein leeres Array zurckgeben.

js
// Strings have indices as enumerable own properties
console.log(Object.keys("foo")); // ['0', '1', '2']

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

Hinweis: In ES5 fhrte das bergeben eines Nicht-Objekts an Object.keys() zu einem TypeError.

Spezifikationen

Spezifikation
ECMAScript 2027 LanguageSpecification
# sec-object.keys

Browser-Kompatibilitt

Siehe auch


Web Proxy Viewer  |  New URL  |  Original Page