1.8 KiB
id, title, challengeType, forumTopicId, dashedName
| id | title | challengeType | forumTopicId | dashedName |
|---|---|---|---|---|
| 587d7dad367417b2b2512b78 | Verwende einen Konstruktor, um Objekte zu erstellen | 1 | 18233 | use-a-constructor-to-create-objects |
--description--
Hier ist der Konstruktor Bird aus der vorherigen Aufgabe:
function Bird() {
this.name = "Albert";
this.color = "blue";
this.numLegs = 2;
}
let blueBird = new Bird();
HINWEIS: this im Konstruktor bezieht sich immer auf das Objekt, das erstellt wird.
Beachte, dass der Operator new verwendet wird, wenn du einen Konstruktor aufrufst. Damit wird JavaScript angewiesen, eine neue Instanz von Bird namens blueBird zu erstellen. Ohne den Operator new würde this innerhalb des Konstruktors nicht auf das neu erstellte Objekt zeigen, was zu unerwarteten Ergebnissen führen würde. Jetzt hat blueBird alle Eigenschaften, die im Konstruktor von Bird definiert sind:
blueBird.name;
blueBird.color;
blueBird.numLegs;
Wie bei jedem anderen Objekt auch, kann auf seine Eigenschaften zugegriffen und sie verändert werden:
blueBird.name = 'Elvira';
blueBird.name;
--instructions--
Verwende den Konstruktor von Dog aus der letzten Aufgabe, um eine neue Instanz von Dog zu erstellen, indem du sie der Variablen hound zuweist.
--hints--
hound sollte mit dem Konstruktor von Dog erstellt werden.
assert(hound instanceof Dog);
Dein Code sollte den Operator new verwenden, um eine Instanz von Dog zu erstellen.
assert(code.match(/new/g));
--seed--
--seed-contents--
function Dog() {
this.name = "Rupert";
this.color = "brown";
this.numLegs = 4;
}
// Only change code below this line
--solutions--
function Dog() {
this.name = "Rupert";
this.color = "brown";
this.numLegs = 4;
}
const hound = new Dog();