Reflect

Reflect ist ein Standardobjekt, das Methoden für abfangfähige JavaScript-Operationen bereitstellt.
Die Methoden entsprechen denen des proxy handlers.
Reflect ist kein Funktionsobjekt und verfügt daher über keinen Konstruktor.

Beschreibung

Im Gegensatz zu den meisten globalen Objekten hat Reflect keinen Konstruktor. Sie können es nicht mit einem new operator verwenden, oder Reflect als Funktion aufrufen.

Alle Eigenschaften und Methoden von Reflect sind statisch (wie bei Math).

Methoden

Das Reflect-Objekt stellt die folgenden statischen Funktionen bereit, die dieselben Namen haben wie die Methoden des proxy handler. Einige dieser Methoden sind exakt die selben wie bei entsprechenden Methoden des Object.

Reflect.apply()
Ruft eine Zielfunktion mit Argumenten auf, die Argumente werden im Parameter args angegeben. Siehe auch Function.prototype.apply().
Reflect.construct()
 Der new operator als Funktion. Equivalent zu new target(...args). Bietet die optionale Möglichkeit, einen anderen Prototyp anzugeben.
Reflect.defineProperty()
Ähnlich zu Object.defineProperty(). Gibt einen Boolean zurück.
Reflect.deleteProperty()
Der delete operator als Funktion. Ähnlich zu dem Aufruf delete target[name].
Reflect.get()
Eine Funktion, die den Wert von Eigenschaften/Properties zurückgibt.
Reflect.getOwnPropertyDescriptor()
Ähnlich zu Object.getOwnPropertyDescriptor(). Gibt einen Eigenschaftsdeskriptor der angegebenen Eigenschaft, oder undefined zurück.
Reflect.getPrototypeOf()
Gleich wie Object.getPrototypeOf().
Reflect.has()
Der in operator als Funktion. Gibt einen booleschen Wert zurück, der angibt, ob eine eigene oder geerbte Eigenschaft vorhanden ist.
Reflect.isExtensible()
Gleich wie Object.isExtensible().
Reflect.ownKeys()
Gibt ein Array der eigenen (nicht geerbten) Eigenschaftsschlüssel des Zielobjekts zurück.
Reflect.preventExtensions()
Ähnlich zu Object.preventExtensions(). Gibt einen Boolean zurück.
Reflect.set()
Eine Funktion, die den Eigenschaften/Properties Werte zuweist. Gibt einen Boolean zurück, der true ist, wenn die Zuweisung erfolgreich verlief.
Reflect.setPrototypeOf()

Eine Funktion, die den Prototyp eines Objekts festlegt.

Spezifikationen

Spezifikation Status Kommentar
ECMAScript 2015 (6th Edition, ECMA-262)
Die Definition von 'Reflect' in dieser Spezifikation.
Standard Ursprüngliche Definition.
ECMAScript (ECMA-262)
Die Definition von 'Reflect' in dieser Spezifikation.
Lebender Standard Reflect.enumerate wurde entfernt.

Browser kompatiblität

BCD tables only load in the browser

Siehe auch