Inhaltsverzeichnis:
- Konstruieren von Objekten mit Konstruktorfunktionen
- Ändern eines Objekttyps
- Objekte mit Objekt erstellen aus. create
Video: Wie verarbeitet man Strings? | Programmieren lernen mit JavaScript #8 2025
Wenn Sie Objekte mit JavaScript erstellen, sind Sie nicht darauf beschränkt, bestimmte Objekte wie Ihre Gitarre, Ihr Auto, Ihre Katze oder Ihr Sandwich zu erstellen… Die wahre Schönheit von Objekten besteht darin, dass Sie damit Objekttypen erstellen können, aus denen andere Objekte erstellt werden können.
Hier wird ein neues Personenobjekt vom Typ Objekt erstellt. Dieses neue Personenobjekt enthält alle Standardeigenschaften und Methoden des Objekttyps, jedoch mit einem neuen Namen. Sie können dann dem Personenobjekt eigene Eigenschaften und Methoden hinzufügen, um es spezifisch zu beschreiben, was Sie unter Person verstehen.
var person = neues Objekt (); Person. Augen = 2; Person. Ohren = 2; Person. Arme = 2; Person. Hände = 2; Person. Füße = 2; Person. Beine = 2; Person. Spezies = "Homo sapiens";
Nun haben Sie einige spezifische Eigenschaften des Personenobjekts festgelegt. Stellen Sie sich vor, Sie möchten ein neues Objekt erstellen, das eine bestimmte Person ist, wie Willie Nelson. Sie könnten einfach ein neues Objekt mit dem Namen willieNelson erstellen und ihm dieselben Eigenschaften wie das Personenobjekt sowie die Eigenschaften geben, die Willie Nelson eindeutig machen.
var willieNelson = neues Objekt (); WillieNelson. Augen = 2; WillieNelson. Ohren = 2; WillieNelson. Arme = 2; WillieNelson. Hände = 2; WillieNelson. Füße = 2; WillieNelson. Beine = 2; WillieNelson. Spezies = "Homo sapiens"; WillieNelson. Besetzung = "Musiker"; WillieNelson. Heimatstadt = "Austin"; WillieNelson. Haar = "Lang"; WillieNelson. Genre = "Land";
Diese Methode zum Definieren des willieNelson-Objekts ist jedoch verschwenderisch. Es erfordert, dass Sie viel Arbeit tun, und es gibt keinen Hinweis hier, dass Willie Nelson eine Person ist. Er hat zufällig die gleichen Eigenschaften wie eine Person.
Die Lösung besteht darin, einen neuen Objekttyp namens Person zu erstellen und dann das willieNelson-Objekt vom Typ Person zu machen.
Beachten Sie, dass der Name des Objekttyps immer groß geschrieben wird. Das ist keine Voraussetzung, aber es ist eine fast universelle Konvention. Zum Beispiel können Sie sagen
var person = new Object ();
oder
var willieNelson = neue Person ();
Konstruieren von Objekten mit Konstruktorfunktionen
Um einen neuen Objekttyp zu erstellen, definieren Sie eine neue Konstruktorfunktion. Konstruktorfunktionen werden wie jede andere Funktion in JavaScript gebildet, verwenden jedoch das Schlüsselwort this, um einem neuen Objekt Eigenschaften zuzuweisen. Das neue Objekt erbt dann die Eigenschaften des Objekttyps.
Hier ist eine Konstruktorfunktion für unseren Person-Objekttyp:
function Person () {this.Augen = 2; Dies. Ohren = 2; Dies. Arme = 2; Dies. Hände = 2; Dies. Füße = 2; Dies. Beine = 2; Dies. art = "Homo sapien";}
Um ein neues Objekt vom Typ Person zu erstellen, müssen Sie die Funktion nur einer neuen Variablen zuweisen. Beispiel:
var willieNelson = new Person ()
Das willieNelson-Objekt erbt die Eigenschaften des Person-Objekttyps. Auch wenn Sie keine Eigenschaften für das willieNelson-Objekt erstellt haben, enthält es alle Eigenschaften von Person.
Um dies zu testen, führen Sie diesen Code in einem Webbrowser aus.
Vererbungsdemofunktion Person () {this. Augen = 2; Dies. Ohren = 2; Dies. Arme = 2; Dies. Hände = 2; Dies. Füße = 2; Dies. Beine = 2; Dies. Spezies = "Homo sapien";} var willieNelson = neue Person (); alert ("Willie Nelson hat" + willieNelson. Füße + "Füße!");
Hier ist das Ergebnis der Ausführung dieses Codes in einem Browser.
Person. Willie Nelson ist eine Person.Ändern eines Objekttyps
Angenommen, Sie haben Ihren Person-Objekttyp, der als Prototyp für mehrere Objekte dient. Irgendwann merken Sie, dass die Person, sowie alle Objekte, die von ihr erben, ein paar mehr Eigenschaften haben sollte.
Verwenden Sie die Prototypeigenschaft, die jedes Objekt von Object erbt, um ein Prototypobjekt zu ändern.
Funktion Person () {this. Augen = 2; Dies. Ohren = 2; Dies. Arme = 2; Dies. Hände = 2; Dies. Füße = 2; Dies. Beine = 2; Dies. Spezies = "Homo sapien";} var willieNelson = neue Person (); var johnnyCash = neue Person (); var patsyCline = neue Person (); // Person braucht mehr Eigenschaften! Person. Prototyp. Knie = 2; Person. Prototyp. Zehen = 10; Person. Prototyp. Ellbogen = 2; // Überprüfen Sie die Werte der vorhandenen Objekte für das neue Eigenschaftsdokument. schreibe (patsyCline. toes); // gibt 10
Objekte mit Objekt erstellen aus. create
Eine weitere Möglichkeit, Objekte aus anderen Objekten zu erstellen, ist die Verwendung des Objekts. Methode erstellen. Diese Methode hat den Vorteil, dass Sie keine Konstruktorfunktion schreiben müssen. Es kopiert nur die Eigenschaften eines angegebenen Objekts in ein neues Objekt. Wenn ein Objekt von einem anderen Objekt erbt, wird das Objekt, von dem es erbt, als Prototyp bezeichnet.
Dieses Beispiel zeigt das Objekt. Mit create kann das willieNelson-Objekt aus einem Prototyp erstellt werden.
// generische Person erstellen var person = {augen: 2, arme: 2, füße: 2} // erzeuge das willieNelson-Objekt, basierend auf Person var willieNelson = Objekt. erschaffe (Person); // teste ein geerbtes Eigenschaftsdokument. schreibe (willieNelson. Füße); // gibt 2