1. Voranalyse1. Vorabanalyse von Variablen und FunktionenJavaScript-Code wird vom JavaScript-Parser im Browser ausgeführt. Der JavaScript-Parser führt JavaScript-Code in zwei Schritten aus: Vorparsing und Codeausführung.
Die Vorbereitung erfolgt nur für Variablen und Funktionen, die mit var definiert sind. Durch das Erlernen einer Voranalyse können wir besser verstehen, warum der Wert einer Variablen undefiniert ist, wenn auf sie zugegriffen wird, bevor sie deklariert wurde, und warum eine Funktion aufgerufen werden kann, bevor sie deklariert wurde. Vorbereiten wird auch als Variablen- und Funktionspromotion bezeichnet. 1. Vorabanalyse der Variablen Vorabanalyse von Variablen: Variablendeklarationen werden an den Anfang des aktuellen Bereichs verschoben, Variablenzuweisungen werden nicht verschoben. Zum Beispiel: /* Analysieren Sie zuerst die var-Variable num Führen Sie dann die Konsolenausgabe aus und weisen Sie schließlich num*/ 10 zu. console.log(num); // Was ist das Ergebnis? var num = 10; // ? 2. FunktionsvoranalyseVoranalyse der Funktion : Die Funktionsdeklaration wird an den Anfang des aktuellen Bereichs verschoben, die Funktion wird jedoch nicht aufgerufen. /*Analysieren Sie zuerst die Definition der fn-Funktion und führen Sie dann die Konsolenanweisung aus*/ Konsole.log("1+2+3+...+100=",fn()); Funktion fn(){ var s = 0; für(var i=1;i<=100;i++){ = ich; } Rückgabe s; } 2. Fall vor der AnalyseLassen Sie uns eine kleine Übung machen und sehen, was dabei herauskommt. konsole.log((a)); var a = 1; konsole.log((a)); Funktion a(){ gib a zurück; } Das Ergebnis ist: 2. Ziel In JavaScript ist ein Objekt eine ungeordnete Sammlung verwandter Eigenschaften und Methoden. Alles ist ein Objekt, z. B. Zeichenfolgen, Zahlen, Arrays, Funktionen usw.
1. Drei Möglichkeiten zum Erstellen von Objekten1. Objekte mit Literalen erstellenObjektliteral: Die geschweiften Klammern { } enthalten die Eigenschaften und Methoden, die dieses bestimmte Ding (Objekt) ausdrücken. { } wird in Form von Schlüssel-Wert-Paaren ausgedrückt.
var Stern = { Name: "xl", Alter: 18, Geschlecht: weiblich, sageStudie : function(){ console.log('Lerne fleißig'); } }; Der Eigenschaftsaufruf im Objekt lautet: Objekt.Eigenschaftsname, der Punkt . wird als „von“ verstanden. Beispiel: Eine andere Möglichkeit, die Attribute in einem Objekt aufzurufen: Objekt['Attributname']. Beachten Sie, dass die Attribute in den eckigen Klammern in Anführungszeichen gesetzt werden müssen. Zum Beispiel: 2. Erstellen Sie ein Objekt mit new ObjectDies entspricht dem Prinzip der Array-Erstellung mit new Array(), das wir zuvor kennengelernt haben. var andy = neues Objekt(); andy.name = "xl"; andy.alter = 18; andy.sex = "weiblich"; andy.sayStudy = Funktion(){ console.log('Lerne fleißig'); }
3. Erstellen Sie Objekte mit Konstruktoren Konstruktor: Eine spezielle Funktion, die hauptsächlich zum Initialisieren von Objekten verwendet wird, d. h. zum Zuweisen von Anfangswerten zu Objektelementvariablen. Sie wird immer mit dem neuen Operator verwendet. Wir können einige allgemeine Eigenschaften und Methoden aus dem Objekt extrahieren und sie in diese Funktion kapseln. Beachten Sie bei der Verwendung von Konstruktoren in js die folgenden zwei Punkte:
Zum Beispiel: Funktion MeinName(Name,Alter,Geschlecht){ dieser.name = Name; dieses.Alter = Alter; dies.Geschlecht = Geschlecht; } var xl = new MyName('Name','18','18'); var huan = new MyName('Name','16','Name'); Konsole.log('xl.name='+xl.name); console.log('huan:'); Konsole.log(huan); Das Druckergebnis ist: Beachten
4. Konstruktoren und Objekte
2. Neues SchlüsselwortBei der Ausführung von new werden vier Dinge ausgeführt: 1. Erstellen Sie ein neues leeres Objekt im Speicher. 2. Lassen Sie dies auf das neue Objekt zeigen. 3. Führen Sie den Code im Konstruktor aus, um dem neuen Objekt Eigenschaften und Methoden hinzuzufügen. 4. Geben Sie dieses neue Objekt zurück (damit im Konstruktor keine Rückgabe erforderlich ist). 3. Objekteigenschaften durchlaufen Mit der for...in-Anweisung können Sie die Eigenschaften eines Arrays oder Objekts durchlaufen. Die Syntax lautet wie folgt: für (Variable im Objektnamen) { // Code hier ausführen } Die Variablen in der Syntax sind benutzerdefiniert und müssen Namenskonventionen entsprechen. Normalerweise schreiben wir diese Variable als k oder key. für (var k in obj) { console.log(k); // hier ist k der Eigenschaftsname console.log(obj[k]); // hier ist obj[k] der Eigenschaftswert} Beispielsweise wird das folgende Objekt konstruiert Funktion Held(Name,Typ,Blut,Angriff){ dieser.name = Name; dieser.Typ = Typ; dieses.Blut = Blut; dieser.angriff = Angriff; } var lianpo = neuer Held('Lian Po', 'Kraft', '500 HP', 'Nahkampf'); var houyi = neuer Held('Houyi','Shooter-Typ','100 Gesundheit','große Reichweite'); Beim Ausführen der Anweisung for..in führt das Drucken von k und obj[k] jeweils zu den folgenden Ergebnissen: Funktion Held(Name,Typ,Blut,Angriff){ dieser.name = Name; dieser.Typ = Typ; dieses.Blut = Blut; dieser.angriff = Angriff; } var lianpo = neuer Held('Lian Po', 'Kraft', '500 HP', 'Nahkampf'); var houyi = neuer Held('Houyi','Shooter-Typ','100 Gesundheit','große Reichweite'); für (k in lianpo) { Konsole.log(lianpo[k]); } ZusammenfassenDieser Artikel endet hier. Ich hoffe, er kann Ihnen helfen. Ich hoffe auch, dass Sie mehr Inhalten auf 123WORDPRESS.COM mehr Aufmerksamkeit schenken können! Das könnte Sie auch interessieren:
|
<<: Webdesign-Tutorial (6): Behalte deine Leidenschaft für Design
>>: Das Bildelement img hat in IE6 zusätzlichen Leerraum
Umgebungseinführung Betriebssystem: Centos 7.4 Za...
Mixins bieten eine sehr flexible Möglichkeit, wie...
Der Autor dieses Artikels @子木yoyo hat ihn in seine...
Vor einiger Zeit musste das Projekt die Funktion ...
Durch die Verwendung von Abkürzungen können Sie di...
Dies ist ein sehr wichtiges Thema, nicht nur für ...
1. Umweltvorbereitung Tencent Cloud Server CENTOS...
Inhaltsverzeichnis Ereignisbindung von Klassenkom...
1. Voraussetzungen 1. Das Projekt wurde bereitges...
Für Frontend-Entwickler ist es eine zeitaufwändig...
Vorwort Das MySQL Slow Query Log ist ein Protokol...
Inhaltsverzeichnis 1. Was ist dynamische Typisier...
Auf Mobilgeräten sehe ich häufig kreisförmige Wel...
In diesem Blogbeitrag geht es um eine Schwierigke...
Warum brauchen wir Master-Slave-Replikation? 1. I...