[ 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 mit den Namen der eigenen, aufzhlbaren Eigenschaften eines Objekts zurck, deren Schlssel Strings sind.

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 Schlssel der eigenen, aufzhlbaren Eigenschaften des angegebenen Objekts darstellen, deren Schlssel Strings sind.

Beschreibung

Object.keys() gibt ein Array zurck, dessen Elemente den Namen der aufzhlbaren Eigenschaften entsprechen, die direkt auf object definiert sind und deren Schlssel Strings sind. Dies entspricht der Iteration mit einer for...in-Schleife, mit dem Unterschied, dass eine for...in-Schleife auch Eigenschaften in der Prototypkette aufzhlt. Die Reihenfolge im von Object.keys() zurckgegebenen Array entspricht der Reihenfolge bei einer for...in-Schleife.

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

Object.keys() verwenden

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 eigenen Eigenschaften mit String-Schlsseln bentigen, einschlielich der nicht aufzhlbaren, lesen Sie Object.getOwnPropertyNames().

Object.keys() mit primitiven Werten verwenden

Argumente, die keine Objekte sind, werden in Objekte umgewandelt. undefined und null knnen nicht in Objekte umgewandelt werden und lsen unmittelbar einen TypeError aus. Nur Strings knnen eigene, aufzhlbare Eigenschaften haben; bei allen anderen primitiven Werten wird ein leeres Array zurckgegeben.

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 lste die bergabe eines Werts, der kein Objekt ist, an Object.keys() einen TypeError aus.

Spezifikationen

Spezifikation
ECMAScript 2027 LanguageSpecification
# sec-object.keys

Browser-Kompatibilitt

Siehe auch


Web Proxy Viewer  |  New URL  |  Original Page