| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Object/keys | [Back] [Original] |
Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen bersetzt, und kann Fehler enthalten. Erfahre mehr ber dieses Experiment.
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.
const object = {
a: "some string",
b: 42,
c: false,
};
console.log(Object.keys(object));
// Expected output: Array ["a", "b", "c"]
Object.keys(obj)
objEin Objekt.
Ein Array von Strings, die die eigenen aufzhlbaren, mit String-Schlssel versehenen Eigenschaftenschlssel des gegebenen Objekts darstellen.
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().
// 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().
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.
// 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.
| Spezifikation |
|---|
| ECMAScript 2027 LanguageSpecification # sec-object.keys |
Object.keys in core-jsObject.keysObject.entries()Object.values()Object.prototype.propertyIsEnumerable()Object.create()Object.getOwnPropertyNames()Map.prototype.keys()Objectassign()create()defineProperties()defineProperty()entries()freeze()fromEntries()getOwnPropertyDescriptor()getOwnPropertyDescriptors()getOwnPropertyNames()getOwnPropertySymbols()getPrototypeOf()groupBy()hasOwn()is()isExtensible()isFrozen()isSealed()keys()preventExtensions()seal()setPrototypeOf()values()Object/FunctionDer Bauplan fr ein besseres Internet.
Teile dieses Inhalts sind 19982026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfgbar unter einer Creative-Commons-Lizenz.
| Web Proxy Viewer | New URL | Original Page |