Die Verwendung von API in JavaScript reflektiert

Die Verwendung von API in JavaScript reflektiert

Die Reflexion in JavaScript wird als die Fähigkeit angesehen, Eigenschaften, Variablen und Objektmethoden zur Laufzeit zu manipulieren. Reflect API wurde als neues globales Objekt in eingeführt Es6, Ermöglichen. Es ermöglicht Ihnen auch, dynamische Frameworks und Programme für das Code-Handling zu erstellen.

In dieser Beschreibung werden die Diskussionen der Diskussion verwenden von Reflektieren API In JavaScript mit Hilfe geeigneter Beispiele. So lass uns anfangen!

Reflektieren Sie die API in JavaScript

Reflektieren ist ein neues globales Objekt, das zahlreiche Versorgungsfunktionen bietet, die sich mit der ES5 Global überschneiden “Objekt”. Alle bereitgestellten API -Methoden sind die “sind die“Selbstbeobachtungsfunktionen,Sie ermöglichen es Ihnen, die Eigenschaften eines Objekts zur Laufzeit zu untersuchen und zu manipulieren.

Hier ist der Punkt, dass die Selbstbeobachtungsfunktionen bereits in JavaScript eingebettet sind. Warum ist dann eine neue API erforderlich, wenn diese Funktionen möglicherweise bereits Teil des JavaScript -Objekts sind?

Schauen Sie sich die folgenden Punkte an, um die Antwort zu erhalten:

Alle APIs in einem einzigen Namespace: Wie wir bereits erwähnt haben, gibt es in JavaScript bereits Objektreflexions -APIs. Sie waren jedoch nicht unter einem einzigen Namespace strukturiert. In ES6 sind alle Reflexions -APIs innerhalb der “organisiert“Reflektieren”Namespace.

Code -Einfachheit: In JavaScript, wenn eine Introspection -Methode einen angegebenen Objektbetrieb nicht abschließt, wird eine Ausnahme ausgelöst. Dies fügt dem Programmierer zusätzlichen Aufwand für den Umgang mit der Ausnahme hinzu. Während im Fall der Reflect -API die Ausnahme als „behandelt wird“Boolean”(Wahr oder falsch) Wert.

Zuverlässigkeit der Funktionsaufrufe: Im Vergleich zu Objektfunktionen in ES5 bietet die reflektierende API eine elegantere und zuverlässigere Möglichkeit, eine Funktion aufzurufen oder anzuwenden.

Lassen Sie uns nun die Verwendung der reflektierenden API -Methoden im Detail durchlaufen.

Wie man reflektiert.construct () Methode in JavaScript

Der "Reflektieren.bauen()Die JavaScript -Methode wird verwendet, um den reflektierenden API -Konstruktor aufzurufen und gleichzeitig die erforderlichen Argumente anzugeben. Diese Methode verhält sich ähnlich wie die “neu" Operator. Sie können das reflektieren auch nutzen.construct () -Methode für den Einstellungsprototyp eines Objekts.

Syntax der Verwendung reflektiert.construct () Methode in JavaScript

Reflektieren.Konstrukt (Ziel, ArgumenteList [, Newtarget])

Hier, "Ziel"Repräsentiert die Zielfunktion, die aufgerufen wird"Argumenteliste”Sind der Funktionsparameter und“Neues ZielIst ein optionaler Parameter, mit dem der Prototyp eines Konstruktors angegeben wird.

Beispiel: Wie man reflektiert.construct () Methode in JavaScript

Jetzt werden wir das reflektieren.construct () Methode zum Erstellen eines Objekts “X"Haben"ArrayPrototyp und die folgende Argumenteliste:

const x = reflektieren.Konstrukt (Array, [10,20,30,40,50]);
Konsole.log (x);

Die Ausführung des oben gegebenen Codes gibt ein neues zurück “XObjekt mit der angegebenen Argumentliste und ihrem Prototyp:

Wie man reflektiert.appara () Methode in JavaScript

Der "Reflektieren.anwenden()Die Methode wird zum Aufrufen einer Funktion mit Hilfe des angegebenen Arguments verwendet.

Syntax der Verwendung reflektiert.appara () Methode in JavaScript

Reflektieren.anwenden (Ziel, thisarg, Argumente)

Hier, "Ziel"Repräsentiert die Zielfunktion, die aufgerufen wird"ThisArg"Wird sich als" verhalten "Das"Schlüsselwort für die Funktion und"ArgumenteDie Parameter darstellen, die die aufgerufene Funktion akzeptiert.

Beispiel: Wie man reflektiert.appara () Methode in JavaScript

Zunächst werden wir eine erstellen "X”Array, das fünf Elemente umfasst:

var x = [10,20,30,40,50];

Im nächsten Schritt werden wir die „verwenden“Reflektieren.anwenden()Methode zur Anwendung der “Mathematik.Max"Funktion zum benannten Array"X”:

Konsole.Protokoll (reflektieren.Bewerben Sie (Mathematik.Max, undefiniert, x));

Der "Mathematik.Max"Funktion gibt die größte Zahl zurück, die in der" vorhanden ist "X”Array:

Wie man reflektiert.definieproperty () Methode in JavaScript

Wenn Sie die Eigenschaften eines Objekts hinzufügen oder aktualisieren möchten, verwenden Sie die Reflektieren.DefineProperty () JavaScript -Methode. Es funktioniert ähnlich wie die Objekt.DefineProperty () Methode; Jedoch der Reflektieren.DefineProperty () Die Methode gibt einen booleschen Wert zurück, anschließend das modifizierte Objekt.

Syntax der Verwendung reflektiert.definieproperty () Methode in JavaScript

Reflektieren.DefineProperty (Target, PropertyKey, Attribute)

Hier, "Ziel"Repräsentiert die Zielfunktion, die aufgerufen wird"PropertyKey”Zeigt die Eigenschaft des Objekts an, die definiert oder geändert werden muss und“AttributeSetzen Sie den Wert für den angegebenen PropertyKey.

Beispiel: Wie man reflektiert.definieproperty () Methode in JavaScript

Im folgenden Beispiel werden wir definieren “Stütze"Als PropertyKey für die"OBJ1"JavaScript -Objekt, das" enthält "60”Als Wert:

const obj1 = ;
(Reflektieren.DefineProperty (obj1, 'prop', value: 60))
Konsole.log (obj1.Stütze);

Wie Sie sehen können, haben wir erfolgreich einen Wert für die “definiert“Stütze”PropertyKey von“OBJ1" Verwendung der Reflektieren.DefineProperty () Methode:

Wie man reflektiert.Get () Methode in JavaScript

In JavaScript die Reflektieren.Get () Methode Ruft die Eigenschaft eines Objekts als Funktion ab.

Syntax der Verwendung reflektiert.Get () Methode in JavaScript

Reflektieren.Get (Ziel, PropertyKey [, Empfänger])

Hier, "Ziel"Repräsentiert das JavaScript -Objekt, dessen Eigenschaft zugegriffen wird"PropertyKey”Zeigt den Namen der Eigenschaft an, die Sie erhalten möchten, und“EmpfängerIst ein optionaler Parameter, der den Wert von "darstellt"Das”Verwendet, um das Ziel anzurufen.

Beispiel: Wie man reflektiert.Get () Methode in JavaScript

Der "Reflektieren.erhalten()Die Methode wird im folgenden Beispiel verwendet, um die zu erhalten Erste Eigentumswert der “X”Array:

var x = [10,20,30,40,50];
Konsole.Protokoll (reflektieren.Get (x, '1'));

Die Ausgabe des angegebenen Code zeigt den Wert der angegebenen Eigenschaft an:

Wie man reflektiert.GetPrototypeof () -Methode in JavaScript

Der "Reflektieren.GetPrototypeof ()Die Methode wird aufgerufen, um den Prototyp eines JavaScript -Objekts abzurufen.

Syntax der Verwendung reflektiert.GetPrototypeof () -Methode in JavaScript

Reflektieren.GetPrototypeof (Ziel)

Hier, "Ziel”Repräsentiert die Objekte, deren Prototyp mit Hilfe von abgerufen wird Reflektieren.GetPrototypeof () Methode.

Beispiel: Wie man reflektiert.GetPrototypeof () -Methode in JavaScript

Erstens werden wir ein Objekt von “erstellen“Null" Prototyp:

const obj1 = Objekt.Create (null);

Danach werden wir das verwenden “Reflektieren.GetPrototypeof ()"Methode, um den Prototyp von" zu erhalten "OBJ1”:

Konsole.Protokoll (reflektieren.GetPrototypeof (obj1));

Die untergegebene Ausgabe bedeutet das “OBJ1" hat "Null" Prototyp:

Wie man reflektiert.set () Methode in JavaScript

In JavaScript die Reflektieren.set () Methode wird verwendet, um den Eigenschaftswert eines Objekts festzulegen.

Syntax der Verwendung reflektiert.set () Methode in JavaScript

Reflektieren.set (Ziel, PropertyKey, Wert [, Empfänger])

Hier, "Ziel"Repräsentiert den JavaScript -Objekt, den wir festlegen werden,"PropertyKey"Ist eine angegebene Objekteigenschaft"Wert”Zeigt den neuen Wert an. Zuletzt, "EmpfängerIst ein optionaler Parameter mit dem Wert von “Das”Verwendet, um das Ziel anzurufen.

Beispiel: Wie man reflektiert.set () Methode in JavaScript

Um die Verwendung von Reflect zu demonstrieren.Set () Methode erstellen Sie zunächst ein leeres Objekt mit dem Namen “obj”:

const obj = [];

Führen Sie dann den untergegebenen Code aus, um die Eigenschaftswerte des angegebenen Objekts festzulegen:

Reflektieren.set (obj, 0, 'erster');
Reflektieren.set (obj, 1, 'zweiter');
Reflektieren.set (obj, 2, 'dritter');
Konsole.log (obj);

Schauen Sie sich nun das an "objEigenschaftswerte, die wir mit dem reflektierten festgelegt haben.set () Methode:

Wie man reflektiert.DeleteProperty () -Methode in JavaScript

Sie können die nutzen Reflektieren.DeleteProperty () Methode zum Löschen der angegebenen Eigenschaft eines Objekts.

Syntax der Verwendung reflektiert.DeleteProperty () -Methode in JavaScript

Reflektieren.DeleteProperty (Target, PropertyKey)

Hier, "Ziel"Repräsentiert das JavaScript -Objekt, dessen Eigenschaft gelöscht wird, und"PropertyKey”Zeigt seine Eigenschaft an.

Beispiel: Wie man reflektiert.DeleteProperty () -Methode in JavaScript

In diesem Beispiel wird das reflektiert.DeleteProperty () -Methode zum Löschen der Löschung Erste Eigenschaftswert des Erstellten “X" Objekt:

var x = [10,20,30,40,50];
Reflektieren.DeleteProperty (x, '1');

Ausgang

Der "Reflektieren.DeleteProperty ()"Methode wird zurückgegeben"WAHRWenn die Eigenschaft des angegebenen Objekts erfolgreich gelöscht wird; Andernfalls wird der Rückgabefall auf “gesetzt“FALSCHWenn die angegebene Eigenschaft nicht gefunden wird.

Abschluss

Durch die Verwendung von Reflect-API in JavaScript können Sie Objektmethoden aufrufen, Objekteigenschaftenwerte festlegen, Objekte konstruieren, ihre Eigenschaften zur Laufzeit erweitern und manipulieren. Es ermöglicht auch die Erstellung dynamischer Frameworks und Programme für Code-Handling. In diesem Artikel wurde die Verwendung von Reflect-API in JavaScript mit Hilfe geeigneter Beispiele erörtert.