1. Übersicht 1.1 Was ist der strikte Modus? Der strikte Modus ist eine restriktivere Variante von Obwohl die meisten Browser den strikten Modus mittlerweile unterstützen, unterstützen einige ältere Browserversionen den strikten Modus immer noch nicht. Verwenden Sie den strikten Modus daher nicht, ohne die Funktionen des strikten Modus zu testen. Der strenge Modus und der nicht strenge Modus können in 1.2 Zweck des strikten ModusDer Zweck der Verwendung des strikten Modus ist folgender: Erstens verwandelt der strikte Modus 2. Aktivieren Sie den strikten Modus Es gibt zwei Möglichkeiten, den strengen Modus in 2.1 Aktivieren Sie den strikten Modus globalUm den globalen strikten Modus zu aktivieren, müssen Sie vor allen Codes nur eine Zeichenfolge eingeben. Die Zeichenfolge lautet wie folgt: "use strict"; // oder ‚use strict‘; Es ist zu beachten, dass, wenn sich der vorherige 2.2 Aktivieren Sie den strikten Modus lokal Um den strikten Modus lokal zu aktivieren, können Sie der ersten Zeile einer angegebenen Funktion die Zeichenfolge „ Der Beispielcode zum Aktivieren des strikten Modus lautet wie folgt: //Strict-Modus global aktivieren //"use strict" v = 100 Konsole.log(v) Funktion Spaß() { // Aktivieren Sie lokal den strikten Modus „use strict“. vv = 200 Konsole.log(vv) } // fun() wirft eine Ausnahme vv ist nicht definiert 3. Variablen im strikten Modus 3.1 Verhindern Sie die versehentliche Erstellung von VariablenDie sogenannten versehentlich erstellten Variablen sind Variablen, die ohne Verwendung des Schlüsselworts var deklariert wurden. Wenn im strengen Modus versehentlich eine globale Variable erstellt wird, wird eine Ausnahme ausgelöst. Der Beispielcode lautet wie folgt: „streng verwenden“ // Im nicht strikten Modus wird beim Erstellen einer solchen Variable kein Fehler gemeldet, im strikten Modus wird beim Erstellen einer solchen Variable jedoch eine Ausnahme ausgelöst v = 100 Konsole.log(v) 3.2 Stiller Ausfall wird zur AusnahmeStiller Fehler bedeutet, dass kein Fehler auftritt und keine Auswirkung hat. Im strikten Modus wird daraus eine Ausnahme. 3.3 Deaktivieren des LöschschlüsselwortsIm nicht strikten Modus schlägt die Verwendung des Schlüsselworts delete auf eine globale Variable stillschweigend fehl, während im strikten Modus eine Ausnahme ausgelöst wird. Der Beispielcode lautet wie folgt „streng verwenden“ var v = 100 delete v // Syntaxfehler: Löschen eines nicht qualifizierten Bezeichners im strengen Modus. Konsole.log(v) 3.4 Einschränkungen bei Variablennamen Im strikten Modus hat 4. Objekte im strikten Modus 4.1 Nicht löschbare Attribute Im nicht strikten Modus schlägt die Verwendung des Schlüsselworts Der Beispielcode lautet wie folgt: "streng verwenden" lösche Object.prototype; //Wirf eine Ausnahme 4.2 Vergabe von schreibgeschützten EigenschaftenIm nicht strikten Modus schlägt die Zuweisung eines Wertes zu einer schreibgeschützten Eigenschaft stillschweigend fehl, im strikten Modus wird jedoch eine Ausnahme ausgelöst. Der Beispielcode lautet wie folgt: „streng verwenden“ var obj = {} Objekt.defineProperty(obj, 'Name', { Wert: 'eine Schüssel Haferbrei', }) obj.name = 'Yiwan Zhou' //Löst eine Ausnahme aus 4.3 Nicht erweiterbare ObjekteDas Hinzufügen neuer Eigenschaften zu einem nicht erweiterbaren Objekt schlägt im nicht strengen Modus stillschweigend fehl, löst im strengen Modus jedoch eine Ausnahme aus. Der Beispielcode lautet wie folgt: //Aktiviere den globalen strikten Modus „use strict“ var obj = {} //Nicht erweiterbar machen Object.preventExtensions(obj) //Erweitern Sie das Objektattribut obj.name = 'Yiwan Zhou' //Werfen Sie eine Ausnahme 5. Funktionen im strikten Modus 5.1 Parameternamen müssen eindeutig seinIm nicht strikten Modus können Funktionsparameter wiederholt werden, im strikten Modus wird jedoch eine Ausnahme ausgelöst, wenn die Funktionsparameter wiederholt werden. Der Beispielcode lautet wie folgt: „streng verwenden“ Funktion Spaß(a, a, b) { konsole.log(a + a + b) } /* *Das Ergebnis im nicht strikten Modus ist 7=2+2+3 *Im strikten Modus wird eine Ausnahme ausgelöst*/ Spaß (1, 2, 3) 5.2 Unterschiede in den Argumenten Die Unterschiede sind wie folgt:
Der Beispielcode lautet wie folgt: „streng verwenden“ Funktion Spaß(v) { v = "100" Konsole.log(v) console.log(Argumente[0]) } /* * Das im nicht strikten Modus ausgegebene Ergebnis ist 100, 100 *Die im strikten Modus gedruckten Ergebnisse sind 100, 200 */ Spaß(200) 5.3 arguments.callee-Eigenschaft Im nicht strikten Modus können Sie die Eigenschaft Der Beispielcode lautet wie folgt: „streng verwenden“ Funktion Spaß () { Konsole.log(Argumente.Callee); } fun()//Eine Ausnahme werfen 5.4 Einschränkungen bei FunktionsdeklarationenIm strikten Modus können Funktionen nur im globalen und lokalen Gültigkeitsbereich deklariert werden. Es ist ein Fehler, Funktionssyntax außerhalb dieser beiden Gültigkeitsbereiche zu deklarieren (z. B. if-Anweisungsblöcke). Der Beispielcode lautet wie folgt: „streng verwenden“ Funktion Spaß() { console.log(Argumente.Angerufener) } fun() //Eine Ausnahme werfen 6. Erhöhen Sie den Umfang von eval() Im strikten Modus können mit der Funktion Bei externer Verwendung wird eine Ausnahme ausgelöst. Der Beispielcode lautet wie folgt: „streng verwenden“ eval('var v=100') console.log(v) //Eine Ausnahme auslösen 7. Unterdrücken Sie dies Wenn Sie die Methode Der Beispielcode lautet wie folgt: // Aktivieren Sie den strikten Modus „use strict“ var v = 100 Funktion fn() { konsole.log(dieses.v) } var obj = { v: 200, } fn.call(obj) //dies zeigt auf das globale Objekt Abschluss: In diesem Artikel werden grundsätzlich alle Situationen des strikten Modus vorgestellt. Dies reicht aus, um die mit dem strikten Modus verbundenen Probleme bei der täglichen Entwicklung zu lösen. Dies ist das Ende dieses Artikels über den strikten Das könnte Sie auch interessieren:
|
<<: Zusammenfassung der Dockerfile-Maven-Plugin-Nutzungsanleitung
>>: Reines CSS zum Anpassen der Div-Höhe entsprechend der adaptiven Breite (Prozentsatz)
MySQL5.6.40-Installationsprozess unter CentOS7 64...
1. Was ist ElasticSearch? Elasticsearch wird eben...
Inhaltsverzeichnis Vorwort Nr.1 Ein Fokus Nr. 2 E...
In der Yum-Quelle von Centos7 ist standardmäßig k...
Vorwort Um Dateiberechtigungen im Terminal eines ...
Docker installiert MySQL Docker-Suche MySQL. Such...
1. Offizielle Einführung grep ist ein häufig verw...
Vorlage <el-table :data="Datenliste"...
Vorwort Die Schlüsselwörter von MySQL und Oracle ...
Gemeinsamer Index Die Definition des gemeinsamen ...
Inhaltsverzeichnis Hörer beobachten Format Richte...
brauchen: Der Ressourcenserver der offiziellen We...
Der W3C-Standardisierungsprozess ist in 7 verschi...
1. Dynamische Komponenten <!DOCTYPE html> &...
Zu den neuen Funktionen in MySQL 8.0 gehören: Vol...