Zusammenfassung
Der Object
-Konstruktor erstellt ein Objekt
Konstruktor
// Object Initialisierer / Literal
{ [ NameWertPaar1 [, NameWertPaar2 [, ...NameWertPaarN] ] ] }
// Konstruktor-Form
new Object( [ Wert ] )
Parameter
- NameWertPaar1, NameWertPaar2, ... NameWertPaarN
- Paare von Namen (
String
) und Werten (eines beliebigen Typs) bei denen der Name durch ein Doppelpunkt vom Wert getrennt ist.
- Wert
- Ein Wert eines beliebigen Typs.
Beschreibung
Der Object
Konstruktor erstellt ein Objekt für den übergebenen Wert. Wenn der Wert null
oder undefined
ist, wird ein leeres Object
erstellt und zurückgegeben. Ansonsten wird ein Objekt des Typs erstellt, welcher dem übergebenen Wert entspricht. Sollte der Wert bereits ein vom Typ Object
sein, wird dieses zurückgeggeben.
Wenn sie nicht als Konstruktor aufgerufen wird (d.h. ohne new
), verhält sich die Funktion Object
genau so wie new Object()
.
Siehe auch den Object Intialisierer / Literal Syntax.
Eigenschaften des Object
Konstruktors
Object.length
- Hat den Wert 1.
Object.prototype
- Erlaubt es neue Eigenschaften zu allen Objekten des Typs Object hinzuzufügen.
Methoden des Object
Konstruktors
Object.assign()
- Kopiert die Werte aller eigenen, aufzählbaren Eigenschaften von einem oder mehreren Quellobjekten in ein Zielobjekt.
Object.create()
- Erstellt ein neues Objekt mit dem angegebenen Protoyp-Objekt und optionalen Eigenschaften.
Object.defineProperty()
- Fügt eine neue Eigenschaft einem bestimmten Objekt hinzu, welche durch Zusatzinformationen beschrieben wird.
Object.defineProperties()
- Fügt mehrere Eigenschaften einem bestimmten Objekt hinzu, welche durch Zusatzinformationen beschrieben werden.
Object.entries()
- Gibt ein Array zurück, welches alle eigenen, aufzählbaren String-Eigenschaften in der Form von
[Name, Wert]
-Paaren enthält. Object.freeze()
- Friert ein Objekt ein: Die Eigenschaften können nicht mehr geändert oder gelöscht werden.
Object.fromEntries()
- Erstellt ein Objekt aus einer Liste von
[Name, Wert]
-Paaren (kehrtObject.entries
um). Object.getOwnPropertyDescriptor()
- Gibt die Zusatzinformationen einer bestimmten eigenen Eigenschaft zurück.
Object.getOwnPropertyDescriptors()
- Gibt ein Objekt zurück, welches die Zusatzinformationen aller eigenen Eigenschaften enthält.
Object.getOwnPropertyNames()
- Gibt ein Array zurück, welches die Namen aller eigenen, aufzählbaren und nicht-aufzählbaren Eigenschaften enthält.
Object.getOwnPropertySymbols()
- Gibt ein Array zurück, welches die Symbole aller eigenen Eigenschaften enthält.
Object.getPrototypeOf()
- Gibt den Protoypen des angegebenen Objekts zurück.
Object.is()
- Vergleicht ob zwei Werte den gleichen Wert haben.
Object.isExtensible()
- Gibt an, ob ein Objekt erweitert werden kann (ob neue Eigenschaften angelegt werden können).
Object.isFrozen()
- Gibt an, ob ein Objekt eingefroren ist.
Object.isSealed()
- Gibt an, ob ein Objekt versiegelt ist.
Object.keys()
- Gibt ein Array zurück, welches die Namen aller eigenen aufzählbaren String-Eigenschaften enthält.
Object.preventExtensions()
- Verbietet das ein Objekt erweitert werden kann.
Object.seal()
- Verbietet das Eigenschaften gelöscht werden können - versiegelt das Objekt.
Object.setPrototypeOf()
- Legt den Prototyp fest (z.Bsp. die interne
[[Prototype]]
Eigenschaft) Object.values()
- Gibt ein Array zurück, welches die Werte aller eigenen aufzählbaren String-Eigenschaften enthält.
Object
Instanzen und das Prototyp-Objekt
Alle Objekte in JavaScript stammen von Object
ab; alle Objekte bekommen die Methoden und Eigenschaften vom Object.prototype
vererbt, jedoch können sie überschrieben werden. Zum Beispiel können Prototypen andere Kontruktoren die constructor
-Eigenschaft überschreiben oder aber ihre eigene toString()
Methode implementieren. Änderungen am Object
Prototypen wirken sich auch auf alle anderen Objekte aus, es sei denn die Eigenschaften oder Methoden sind entlang der Prototyp-Kette schon überschrieben worden.
Eigenschaften
Object.prototype.constructor
- Die Funktion, die den Prototypen eines Objekts erstellt.
Object.prototype.__proto__
- Zeigt auf das Objekt, das als bei der Initialisierung des Objektes als Prototyp diente.
Object.prototype.__noSuchMethod__
- Erlaubt das Erstellen einer Funktion, die dann ausgeführt wird, wenn ein undefiniertes Objekt als Methode aufgerufen wird.
Object.prototype.__count__
Wurde benutzt um die Anzahl der aufzählbaren Attribute direkt durch das Objekt zurückzugeben; mittlerweile entfernt.Object.prototype.__parent__
Wurde benutzt um auf den Kontext eines Objektes zu verweisen; mittlerweile entfernt.
Methoden
Object.prototype.__defineGetter__()
- Verknüpft eine Funktion mit einem Attribut, das, wenn darauf zugegriffen wird eine Funktion ausführt und deren Rückgabewert zurück gibt.
Object.prototype.__defineSetter__()
- Verknüpft eine Funktion mit einem Attribut, das, wenn dieses gesetzt werden soll, eine Funktion ausführt, die das Attribut modifiziert.
Object.prototype.__lookupGetter__()
- Gibt die Funktion zurück, die mit dem spezifizierten Attribut über die Methode
__defineGetter__()
verknüpft ist. Object.prototype.__lookupSetter__()
- Gibt die Funktion zurück, die mit dem spezifizierten Attribut über die Methode
__defineSetter__()
verknüpft ist. Object.prototype.hasOwnProperty()
- Gibt einen Boolean Wert zurück, der anzeigt, ob ein Attribut ein direktes Attribut dieses Objekts ist, oder über Vererbung durch einen Prototypen hinzugefügt wurde.
Object.prototype.isPrototypeOf()
- Gibt einen Boolean Wert zurück, der anzeigt, ob das spezifizierte Objekt in der Prototyp-Kette des Objekts, das diese Funktion aufruft, enthalten ist.
Object.prototype.propertyIsEnumerable()
- Gibt einen Boolean Wert zurück, der anzeigt, ob das interne ECMAScript [[Enumerable]] attribute gesetzt ist.
Object.prototype.toSource()
- Liefert einen String zurück, der die Quelle eines Objekt-Literals enthält, und das Objekt darstellt, das diese Funktion aufruft; man kann diesen Wert benutzen, um ein neues Objekt zu erstellen.
Object.prototype.toLocaleString()
- Ruft
toString()
auf. Object.prototype.toString()
- Gibt eine String-Darstellung des Objekts zurück.
Object.prototype.unwatch()
- Entfernt einen Kontrollpunkt von einem Attribut des Objekts.
Object.prototype.valueOf()
- Gibt den primitiven Wert des spezifizierten Objekts zurück.
Object.prototype.watch()
- Fügt einem Attribut des Objekts einen Kontrollpunkt hinzu.
Object.prototype.eval()
- Wurde genutzt, um einen String bestehend aus JavaScript Code, im Kontext des aktuellen Objekts auszuwerten; wurde entfernt;
Eine Eigenschaft von einem Objekt löschen
Es gibt keine Methode von Object
selbst, um eine Eigenschaft zu löschen (wie z.Bsp. Map.prototype.delete()
). Um das zu erreichen, muss der delete Operator benutzt werden.
Beispiele
Object
mit undefined
und null
Typen nutzen
Die folgenden Beispiele speichern ein leeres Object
in o
:
var o = new Object();
var o = new Object(undefined);
var o = new Object(null);
Object
nutzen um Boolean
-Objekte zu erstellen
Die folgenden Beispiele speichern Boolean
-Objekte in o
:
// das gleiche wie: var o = new Boolean(true);
var o = new Object(true);
// das gleiche wie: var o = new Boolean(false);
var o = new Object(Boolean());
Spezifikationen
Spezifikation | Status | Kommentar |
---|---|---|
ECMAScript 1st Edition (ECMA-262) | Standard | Initiale Definition. In JavaScript 1.0 implementiert |
ECMAScript 5.1 (ECMA-262) Die Definition von 'Object' in dieser Spezifikation. |
Standard | |
ECMAScript 2015 (6th Edition, ECMA-262) Die Definition von 'Object' in dieser Spezifikation. |
Standard |
|
ECMAScript (ECMA-262) Die Definition von 'Object' in dieser Spezifikation. |
Lebender Standard | Object.entries , Object.values und Object.getOwnPropertyDescriptors hinzugefügt. |
Browser-Kompatibilität
BCD tables only load in the browser