NO1. Syntax und Typ
1. Definition der Deklaration
Variablertyp: var, variable definieren; Lassen Sie lokale Variablen in der Blockdomäne (Umfang) definieren; const, schreibgeschützte Konstanten definieren.
Variable Format: Beginnen Sie mit einem Buchstaben, unterstrichen Sie "_" oder $ symbol, fälschlichempfindlich.
Variable Zuordnung: Der Wert der deklarierten, aber nicht zugewiesenen Variablen ist bei Verwendung nicht definiert. Wenn Sie die nicht deklarierte Variable direkt verwenden, wird eine Ausnahme ausgelöst.
Die nicht zugewiesene Variable wird berechnet: Das Ergebnis ist NAN. Zum Beispiel:
var x, y = 1;
console.log (x + y); // Das Ergebnis ist Nan, da X keine Zuordnung hat.
2. Umfang
Variabler Umfang: Es gibt kein Blockdeklarationsfeld vor ES6, und Variablen wirken auf Funktionsblöcke oder global. Zum Beispiel tritt der folgende Code X als 5 ein.
if (true) {var x = 5;} console.log (x); // 5ES6 Variable Geltungsbereich: ES6 unterstützt den Blockbereich, erfordert jedoch die Verwendung von LET, um Variablen zu deklarieren. Der folgende Code gibt die Ausnahme aus.
if (true) {lass y = 5;} console.log (y); // ReferenzError: Y ist nicht definiert1234Variabler Float: In einer Methode oder einem globalen Code, wenn wir Variablen vor Lebensvariablen verwenden, werfen wir keine Ausnahmen aus, sondern kehren undefiniert zurück. Dies liegt daran, dass JavaScript automatisch die Variablenerklärung an der Vorderseite der Funktion oder global schwebt. Wie im folgenden Code gezeigt:
/*** Global Variable Float*/console.log (x === undefiniert); // Protokolle "true" var x = 3;/*** Methodenvariable float*/var myvar = "Mein Wert"; // Variable MyVar -Ergebnis ist: undefined (function () {console.log (myvar); // undefinedvar myvar = "lokaler Wert";}) (); Der obige Code entspricht dem folgenden Code: /*** Global Variable Float* /var x; console.log (x === undefiniert); // Protokolle "true" x = 3;/*** Methodenvariable float*/var myvar = "my value"; (function () {var myvar; console.log (myvar); // undefinedMyvar = "Lokaler Wert";}) ();Globale Variablen: Auf der Seite ist das globale Objekt ein Fenster, sodass wir über window.Variable auf die globale Variable zugreifen können. Zum Beispiel:
Version = "1.0.0"; console.log (window.version); // Ausgabe 1.0.0
NO2. Datenstruktur und Typ
1. Datentyp
6 Grundtypen: Boolean (wahr oder falsch), NULL (JS -Fallempfindlichkeit, anders von Null und Null), undefiniert, Zahl, String, Symbol (markieren Sie eindeutig und unveränderlich)
Ein Objekttyp: Objekt.
Objekt und Funktion: Ein Objekt als Wertecontainer und eine Funktion als Anwendungsprozess.
2. Datenumwandlung
Funktion: Die ParseInt- und Parsefloat -Methoden können verwendet werden, um eine Zeichenfolge in eine Zahl zu konvertieren.
ParseInT: Die Funktionssignatur ist ParseInt (String, Radix), Radix ist eine Anzahl von 2-36, die die numerische Basis darstellt, wie z. B. Dezimal oder Hexadezimal. Das Rückgabeergebnis ist Ganzzahl oder NAN, beispielsweise sind die folgenden Ausgabeergebnisse alle 15.
ParseInt ("0xf", 16); ParseInt ("F", 16); ParseInt ("17", 8); ParseInt (021, 8); ParseInt ("015", 10); ParseInt (15,99, 10); Arseint ("15,123", 1011); 2); ParseInt ("15*3", 10); ParseInt ("15e2", 10); ParseInt ("15px", 10); ParseInt ("15px", 10); ParseInt ("15px", 10); ParseInt ("15px", 10); Parseint ("15px", 10); 10); ParseInt ("15px", 10); ParseInt ("15px", 10); ParseInt ("15px", 10); ParseInt ("15px", 10);Parsefloat: Die Funktionssignatur ist Parsefloat (Zeichenfolge) und das Ergebnis ist eine Zahl oder Nan. Zum Beispiel:
Parsefloat ("3.14"); // Die Nummer Parsefloat zurückgeben ("314E-2"); // die Nummer Parsefloat zurückgeben ("mehr nicht-digitale Zeichen"); // die Nummer nan zurückgeben3.. Datentyp Textualisation
Strukturierte Typen: Array, Boolescher, Gleitkomma, Ganzzahlen, Objekt, Regexp, String.
Zusätzliche Komma -Fälle in Array: ["Löwe", "Engel"], Länge 3, der Wert von [1] ist ungepflegt. ['Home',, 'School',], das letzte Komma ist weggelassen, so dass die Länge 3. [, 'Home', 'School'], Länge 4. ['Zuhause',, 'Schule',,], Länge 4.
Ganzzahl Ganzzahl: Ganzzahlen können als dezimal, oktal, hexadezimal und binär ausgedrückt werden. Zum Beispiel:
0, 117 und -345 // Dezimal 015, 0001 und -0o77 // Octal 0x1123, 0x00111 und -0xf1a7 // hex 0b11, 0b0011 und -0b11 1234 // Binär -Gleitpunktzahl: [(+| -) [Digits] [. Zum Beispiel: 3.1415926, -.123456789, -3.1e+12 (3100000000000), .1E -23 (1E -24)
Objekt: Der Eigenschaftserfassungswert eines Objekts kann durch ". Attribut" oder "[Attributname]" erhalten werden. Zum Beispiel:
var Car = {ManyCars: {A: "Saab", "B": "Jeep"}, 7: "Mazda"}; console.log (car.Manycars.b); // Jeepconsole.log (Auto [7]); // MazdaObjektattribut: Der Attributname kann eine beliebige Zeichenfolge oder eine leere Zeichenfolge sein, und ungültige Namen können in Anführungszeichen enthalten sein. Komplexe Namen können nicht erhalten werden. Sie können jedoch durch [] erhalten werden. Zum Beispiel:
var UnualPropertyNames = {"": "An leerer String", "!": "Bang!"} console.log (unualPropertynames. ""); // syntaxError: unerwarteter StringConsole.log (unualPropertynames [""]); // ein leerer Stringconsole.log (unualPropertynames.!); // syntaxError: unerwartetes Token! Console.log (unualPropertynames ["!"]); // Bang!Transformationszeichen: Die folgenden Ergebnisse der String -Ausgabe enthalten doppelte Zitate, da das Transformationssymbol "/" "verwendet wird.
var QUOTE = "Er las/" Die Einäscherung von Sam McGee/"von RW Service"; Console.log (Zitat); // Ausgabe: Er las "Die Einäscherung von Sam McGee" von RW Service.1.
String Line Breaking -Methode: Fügen Sie "/" direkt am Ende der Zeichenfolge hinzu, wie im folgenden Code gezeigt:
var str = "Diese Zeichenfolge /ist zerbrochen /kreuzen Sie mehrere Zeilen." Console.log (str); // Diese Zeichenfolge ist über Multiplelines unterbrochen.
NO3. Steuerfluss und Fehlerbehandlung
1. Blockausdruck
Funktion: Blockausdrücke werden im Allgemeinen verwendet, um die Flüsse zu steuern, z. B. wenn, für und while. Im folgenden Code ist {x ++;} eine Blockdeklaration.
while (x <10) {x ++;}Vor ES6 gab es keinen Blockdomänenumfang: Vor ES6 wurden in den Blöcken definierten Variablen tatsächlich in Methoden oder global enthalten, und der Einfluss von Variablen überschritt den Umfang des Blockbereichs. Das endgültige Ausführungsergebnis des folgenden Code ist beispielsweise 2, da die im Block deklarierten Variablen auf die Methode eingehen.
var x = 1; {var x = 2;} console.log (x); // Ausgänge 2Nach ES6 gibt es einen Blockdomänenbereich: In ES6 können wir die Blockdomänendeklaration var so ändern, dass die Variable nur den Blockbereich umfasst.
2. logisches Urteil
Die als falsch beurteilten besonderen Werte: falsch, undefiniert, Null, 0, Nan, "".
Einfache Boolesche und Objekt Boolesche Typen: Es gibt einen Unterschied zwischen falschen und einfachen booleschen Typen und falsch und für Objekt -Boolesche Typen, und die beiden sind nicht gleich. Wie im folgenden Beispiel:
var b = neuer boolean (false); if (b) // return trueif (b == true) // false zurückgeben
NO4. Ausnahmebehandlung
1. Typexception -Typ
Ausnahme -Wurfsyntax: Das Ausnahmewurf kann von jedem Typ sein. Wie unten gezeigt.
"error2" werfen; // String Typ Wurf 42; // Zahlen Typ Wurf True; // Boolean Typ Throw {toString: function () {return "Ich bin ein Objekt!"; }}; // ObjekttypBenutzerdefinierte Ausnahme:
// Erstellen Sie einen Objekttyp UseSexceptionFunction userexception (message) {this.message = message; this.name = "userexception";} // Schreiben Sie die ToString -Methode um, um nützliche Informationen direkt zu erhalten. Neue Usexception ("Wert zu hoch");2. Syntax
Schlüsselwörter: Verwenden Sie Try {} catch (e) {} endlich {} Syntax, ähnlich wie C# Syntax.
Schließlich der Rückgabewert: Wenn schließlich eine Rückgabeerklärung hinzugefügt wird, egal wie der gesamte Versuch zurücksetzt, wird der Rückgabewert endgültig zurückgegeben. Wie unten gezeigt:
Funktion f () {try {console.log (0); werfen "Schein"; } catch (e) {console.log (1); zurückkehren; // Die Rückgabeerklärung wird durchgeführt, bis die Ausführung schließlich die Konsole abgeschlossen ist.log (2); // Code, der nicht ausgeführt wird} endlich {console.log (3); false zurückgeben; // Überschreibe die Rückkehrkonsole.log (4); // Code, der nicht ausgeführt wird} // "false zurückgeben" wird nun Console.log (5) ausgeführt; // nicht erreichbar} f (); // Ausgabe 0, 1, 3; Return falschSchließlich schlucken Ausnahme: Wenn es endlich eine Rückkehr gibt und es eine Ausnahme im Fang gibt. Die Ausnahme von Wurf wird nicht gefangen, da sie durch die endgültige Rückkehr abgedeckt wurde. Der folgende Code sieht aus wie:
Funktion f () {try {throw "bogus"; } catch (e) {console.log ('gefangen innere "Bogus"'); werfen e; // Die Wurfanweisung wird durchgeführt, bis die Ausführung schließlich abgeschlossen ist} endlich {return false; // Überschreibe die Wurfanweisung in try.catch} // "false"} try {f ();} catch (e) {// Es wird hier nicht ausgeführt, weil der Fang durch die Rückkehrerklärung in schließlich Konsole.log ('gefangene "Bogus"') überschrieben wurde.Systemfehlerobjekt: Wir können den Fehler {Name, Meldung} Objekt direkt verwenden, zum Beispiel: Throw (neuer Fehler ('die Nachricht'));
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.