Was macht das Schlüsselwort `new` in JavaScript? Erklären Sie anhand von Beispielen
Hallo zusammen! Ich habe gerade angefangen, JavaScript zu lernen, und bin auf das Schlüsselwort `new` gestoßen. Ehrlich gesagt bin ich verwirrt. Ich verstehe zwar, dass es mit der Erstellung von Objekten zu tun hat, aber wie genau es funktioniert, ist mir nicht ganz klar.
Zum Beispiel sehe ich diesen Code:
```javascript
function Person(name) {
this.name = name;
this.sayHello = function() {
console.log('Hallo, ich heiße ' + this.name);
};
}
const user = new Person('Anna');
user.sayHello(); // Hallo, ich heiße Anna
```
Aber wenn ich ohne `new` schreibe:
```javascript
const user = Person('Anna');
console.log(user); // undefined
```
Warum passiert das? Was genau macht `new` im Inneren? Ich habe gehört, dass es irgendwie `this` bindet, aber ich verstehe die Details nicht.
Außerdem habe ich gesehen, dass in manchen Lehrbüchern Konstruktorfunktionen mit einem Großbuchstaben geschrieben werden, aber nicht immer. Und ich habe auch von `prototype` gehört – hat das etwas mit `new` zu tun?
Bitte erklären Sie Schritt für Schritt, was passiert, wenn wir `new SomeFunction()` schreiben. Und gibt es Alternativen?
Noch keine Antworten.
Anmelden um eine Antwort zu hinterlassen