Heim > Web-Frontend > js-Tutorial > Wie funktioniert das Schlüsselwort „new' in JavaScript zum Erstellen und Verwalten von Objekten?

Wie funktioniert das Schlüsselwort „new' in JavaScript zum Erstellen und Verwalten von Objekten?

Patricia Arquette
Freigeben: 2024-12-26 15:26:11
Original
365 Leute haben es durchsucht

How Does the `new` Keyword Work in JavaScript to Create and Manage Objects?

Entschlüsselung des „neuen“ Schlüsselworts in JavaScript: Enthüllung seiner Funktionalität und Anwendungsfälle

Während JavaScript allgemein als nicht objektorientiert wahrgenommen wird Das Schlüsselwort „new“ spielt eine entscheidende Rolle bei der Erstellung und Bearbeitung von Objekten. Lassen Sie uns in seine Bedeutung eintauchen und die grundlegenden Fragen rund um seine Verwendung beantworten.

Was ist das „neue“ Schlüsselwort?

Das „neue“ Schlüsselwort erfüllt einen vielfältigen Zweck JavaScript:

  1. Es instanziiert ein neues Objekt.
  2. Es bezeichnet die Konstruktorfunktionen „Prototyp“-Objekt als interne und unzugängliche [[Prototyp]]-Eigenschaft des neu erstellten Objekts.
  3. Es weist das neu erstellte Objekt der Variable „this“ zu.
  4. Es ruft den Konstruktor auf Funktion, die das neu erstellte Objekt verwendet, wenn „this“ verwendet wird.
  5. Sofern die Konstruktorfunktion keine Objektreferenz ungleich Null zurückgibt, gibt sie das neu erstellte Objekt zurück Objekt.

Problemlösung mit „new“

Das Schlüsselwort „new“ behebt Einschränkungen im klassenbasierten Vererbungssystem von JavaScript. Durch dynamische Eigenschaften und Vererbung ermöglicht es Programmierern, traditionelle OOP-Mechanismen zu emulieren.

Wann sollte „new“ verwendet werden und wann nicht?

Verwenden Sie das Schlüsselwort „new“, wann immer Sie möchten müssen:

  • Eine Instanz einer Klasse erstellen Konstrukt.
  • Initialisieren Sie ein neues Objekt mit bestimmten Eigenschaften und Methoden.
  • Greifen Sie über die interne Eigenschaft [[prototype]] auf das „Prototyp“-Objekt der Konstruktorfunktion zu.

Vermeiden Sie die Verwendung von „new“, wenn:

  • Sie eine Funktion als Ebene aufrufen möchten Funktion.
  • Sie möchten ein alternatives Objekt von einer Konstruktorfunktion zurückgeben.
  • Sie sind sich der Auswirkungen des Festlegens der internen [[prototype]]-Eigenschaft und der Änderung geerbter Eigenschaften nicht bewusst.

Prototyp und [[Prototyp]] verstehen Eigenschaften

Prototypketten sind für die JavaScript-Vererbung von grundlegender Bedeutung. Die „Prototyp“-Eigenschaft von Funktionen bezieht sich auf ein zugängliches Objekt, das manipuliert werden kann, um geerbte Eigenschaften und Methoden festzulegen. Umgekehrt ist die Eigenschaft [[prototype]] ein internes, unveränderliches Objekt, das den Prototyp der Konstruktorfunktion enthält.

Beispiel:

function ObjMaker() {
  this.a = 'first';
}

ObjMaker.prototype.b = 'second';

const obj1 = new ObjMaker();

console.log(obj1.a); // "first"
console.log(obj1.b); // "second"
Nach dem Login kopieren

In diesem Beispiel , „new“ erstellt ein neues „obj1“-Objekt, setzt seine [[prototype]]-Eigenschaft auf „ObjMaker.prototype“ und führt das aus „ObjMaker“-Funktion, die „obj1.a“ auf „first“ initialisiert. Die „Prototyp“-Kette ermöglicht es „obj1“, die Eigenschaft „b“ von seinem [[Prototyp]]-Objekt zu erben.

Unterklassen und Prototypenverkettung

Um eine unterklassenähnliche Struktur einzurichten, können Sie die Eigenschaft „Prototyp“ des Unterklassenkonstruktors auf das Objekt „Prototyp“ der Oberklasse festlegen. Dadurch entsteht eine Kette von Prototypen, die es Unterklassen ermöglicht, Eigenschaften von ihren Oberklassen zu erben und zu überschreiben.

Das obige ist der detaillierte Inhalt vonWie funktioniert das Schlüsselwort „new' in JavaScript zum Erstellen und Verwalten von Objekten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage