0251 / 590 644 - 0
info@a-coding-project.de

JavaScript: Object

Das Object-Objekt ist das Grundobjekt von dem alle anderen Objekte abgeleitet sind/werden. Es enthält die Grundeigenschaften und -methoden zur Verarbeitung eines Objekts.

JavaScript 1.0 JScript 3.0 Object erstellen  nach oben

Um ein Objekt zu erstellen verwendet man den new-Operator mit dem Aufruf Object(). Dies wird einer Variablen zugewiesen.

a = new Object(); // neues Objekt

Das so erstellte Objekt unterstützt dann nur die Grundeigenschaften/-methoden des Object-Objekts.

Eigenschaften  nach oben

JavaScript 1.1 JScript 2.0 constructor

Die constructor-Eigenschaft gibt die Funktion an, die das Objekt erstellt hat.
Notation: Objekt.constructor

a = new Object();
b = a.constructor;

JavaScript 1.1 JScript 2.0 prototype

Die prototype-Eigenschaft gibt eine Referenz auf die eigentliche Objektklasse wieder.
Notation: Objekt.prototype

Object.prototype.Array = new Array;
a = new Object();
b = a.Array;

Methoden  nach oben

JScript 5.5 hasOwnProperty

Die hasOwnProperty-Methode prüft, ob ein Objekt eine bestimmte Eigenschaft besitzt. Ist dies der Fall, wird true, ansonsten false, zurückgegeben. Als Parameter wird ein String erwartet, der den Namen der Eigenschaft enthält.
Notation: Objekt.hasOwnProperty( Name )

a = new String('xyz');
b = a.hasOwnProperty(length); 
// = true (je nach JS-Version/Unterstützung)

JScript 5.5 isPrototypeOf

Die isPrototypeOf-Methode prüft, ob ein Objekt eine Abstammung (prototype) von einem anderen Objekt hat. Ist dies der Fall, wird true, ansonsten false, zurückgegeben. Als Parameter wird ein Objekt erwartet von dem geprüft werden soll, ob es vom eigentlichen Objekt abstammt.
Notation: Objekt1.isPrototypeOf( Objekt2 )

a = new String('xyz');
b = String.prototype.isPrototypeOf(a); // = true

JavaScript 1.0 JScript 1.0 eval

Die eval-Methode setzt Text in JavaScript - bzw. JScript-Code um und führt diesen aus. Als Parameter wird der umzusetzende Text erwartet.
Notation: Objekt.eval( Text )

o = new Object(); a = 2;
b = 3;
c = 'd = a+b';
o.eval(c);
e = d; // = 5;

JScript 5.0 propertyIsEnumerable

Die propertyIsEnumerable-Methode ist ähnlich der hasOwnProperty-Methode. Sie prüft das Vorhandensein einer übergebenen Eigenschaft vom jeweiligen Objekt. Der Unterschied zur hasOwnProperty-Methode besteht darin, dass nicht nur das Vorhandensein geprüft wird, sondern auch, ob die Eigenschaft aufzählbar ist (also mit einer for-in-Schleife durchlaufen werden kann). Sind beide Voraussetzungen erfüllt, wird true zurückgegeben, ansonsten false.
Notation: Objekt.propertyIsEnumerable( Name )

a = new Array('Apfel', 'Banane', 'Citrone');
b = a.propertyIsEnumerable(1); // = true;
c = a.propertyIsEnumerable(5); // = false;

JavaScript 1.3 toSource

Die toSource-Methode gibt einen String wieder, der den Source-Code (Grundcode) des Objekts repräsentiert.
Notation: Objekt.toSource()

a = new Object();
b = a.toSource();

JavaScript 1.1 JScript 2.0 toString

Die toString-Methode wandelt das Objekt in einen String um.
Notation: Objekt.toString()

a = new Object();
b = a.toString();

JavaScript 1.2 unwatch

Die unwatch-Methode entfernt einen Eintrag der mit der watch-Methode belegt wurde. Als Parameter wird der Name der Eigenschaft des jeweiligen Objekts erwartet, dessen Eintrag entfernt werden soll.
Notation: Objekt.unwatch( Name )

a = new MeinObjekt();
a.watch('meineEigenschaft',RemWatch());
function RemWatch(){ a.unwatch('meineEigenschaft'); }
a.meineEigenschaft = 'neuerText';

JavaScript 1.1 JScript 2.0 valueOf

Die valueOf-Methode gibt den Wert des Objekts wieder. Dies entspricht allgemein der toString-Methode.
Notation: Objekt.valueOf()

a = new Object();
b = a.valueOf();

JavaScript 1.2 watch

Die watch-Methode erstellt einen Eintrag auf eine Eigenschaft des Objekts. Wird die beschriebene Eigenschaft geändert, wird eine definierte Funktion ausgelöst. Als Parameter werden dazu der Name der zu überwachenden Eigenschaft sowie die bei Änderung auszuführende Funktion erwartet. Diese Funktion erhält 3 Werte übergeben: den Namen der Eigenschaft, der vorherige Wert sowie der neue Wert (in dieser Reihenfolge). Außerdem kann mit return der Wert übergeben werden, den die Eigenschaft erhalten soll.
Notation: Objekt.watch( Name , Funktion )

a = {Wert:1}
a.watch('Wert',function (name,alt,neu){alert(name+': '+alt+
                                       '->'+neu);return neu});
a.Wert = 2;
a.Wert = 3;
a.unwatch('Wert');
a.Wert = 5;

Auch interessant