Heim  >  Artikel  >  Web-Frontend  >  So verhindern Sie, dass JavaScript automatisch Semikolons einfügt

So verhindern Sie, dass JavaScript automatisch Semikolons einfügt

PHPz
PHPzOriginal
2016-05-16 15:33:501200Durchsuche

In JavaScript gibt es einen automatischen Einfügemechanismus für das Semikolon am Ende der Zeile. Auf diese Weise können einige Freunde es ertragen, das Semikolon zu vergessen. Natürlich ist es am besten, sich an die Eingabe von Semikolons zu gewöhnen und zu verstehen, wie JavaScript mit dem Weglassen von Semikolons umgeht, denn dieses Wissen wird Ihnen helfen, Code ohne Semikolons zu verstehen.

Die JavaScript-Sprache verfügt über einen Mechanismus: Beim Parsen kann nach einem Satz automatisch ein Semikolon eingefügt werden, um das fehlende Semikolon-Trennzeichen am Ende des Satzes zu ändern. Da dieses automatisch eingefügte Semikolon jedoch im Widerspruch zu einem anderen Mechanismus der JavaScript-Sprache steht, der darin besteht, dass alle Leerzeichen ignoriert werden, kann das Programm Leerzeichen zum Formatieren des Codes verwenden.

Der Konflikt zwischen diesen beiden Mechanismen kann leicht schwerwiegendere Parsing-Fehler verdecken. Manchmal werden Semikolons an unpassenden Stellen eingefügt. Das automatische Einfügen eines Semikolons in eine Return-Anweisung hat beispielsweise folgende Konsequenzen: Wenn die Return-Anweisung einen Wert zurückgeben soll, muss der Anfang des Ausdrucks dieses Werts in derselben Zeile wie return stehen, zum Beispiel:

 var f = function(){
 return
 {
 status: true
 };
 }

Es scheint, dass hier ein Objekt zurückgegeben wird, das das Statusmitgliedselement enthält. Leider fügt JavaScript automatisch ein Semikolon ein, sodass es undefiniert zurückgibt, was dazu führt, dass das unten zurückgegebene Objekt ignoriert wird.

Wenn das automatische Einfügen von Semikolons dazu führt, dass das Programm missverstanden wird, erfolgt keine Warnung. Dieses Problem kann vermieden werden, indem { am Ende der vorherigen Zeile statt am Anfang der nächsten Zeile platziert wird, zum Beispiel:

 var f = function(){
 return {
 status: true
 };
 }

Um Fehler zu vermeiden, die durch verursacht werden Es wird empfohlen, Semikolons wegzulassen Entwickeln Sie eine gute Angewohnheit Unabhängig davon, ob die Aussage in einer Zeile vollständig ist oder nicht, muss ein Semikolon hinzugefügt werden, um das Ende des Satzes anzuzeigen, solange es sich um eine vollständige Aussage handelt.

Um das Lesen zu erleichtern, sollte bei der Darstellung eines langen Satzes in separaten Zeilen darauf geachtet werden, dass in einer Zeile keine vollständige logische Semantik gebildet werden kann. Der folgende Code ist beispielsweise eine kontinuierliche Zuweisungsanweisung. Sie können ihre Beziehung klarer erkennen, indem Sie sie in separaten Zeilen anzeigen. Diese Art der Verzweigung zeigt, dass JavaScript nicht jede Zeile als unabhängigen Satz behandelt, da keine unabhängige logische Semantik in einer Zeile gebildet werden kann, sodass keine Mehrdeutigkeit entsteht.

 var a =
 b =
 c = 4;

Die obige Anweisung wird wie folgt in einer Zeile angezeigt: var a = b = c = 4;

Für die folgende Anweisung, wenn Es ist nicht korrekt. Bei der Anzeige in separaten Zeilen kann es leicht zu Unklarheiten kommen. Die Bedeutung dieses Satzes: Definieren Sie eine Variable i und weisen Sie ihr dann einen Wert zu. Wenn die Variable a wahr ist, wird der Wert 1 zugewiesen. Andernfalls wird die Variable b beurteilt. Wenn b wahr ist, wird der Wert zugewiesen zu 2. Andernfalls wird die Variable c beurteilt. Wenn c wahr ist, ist der zugewiesene Wert 3, andernfalls ist der zugewiesene Wert 4.

 var i = a ? 1 : b ? 2 : c ? 3 : 4;

Die folgende Zweiganzeige ist falsch Da der Ausdruck a? 1: b eine unabhängige logische Semantik bilden kann, fügt JavaScript danach automatisch ein Semikolon hinzu, um einen unabhängigen Satz darzustellen.

 var i = a ? 1: b
 ? 2 : c
 ? 3 : 4;

Sichere Methoden sollten wie folgt in separaten Zeilen angezeigt werden, sodass nicht jede Zeile eine unabhängige Semantik bilden kann.

 var i = a ? 1
 : b ? 2
 : c ? 3
 : 4;

Kurz gesagt, Sie sollten sich beim Schreiben von Code angewöhnen, Semikolons am Ende von Sätzen zu verwenden. Alle vollständigen Sätze sollten durch Semikolons getrennt werden. Sätze, die in separaten Zeilen angezeigt werden, sollten sicherstellen, dass eine einzelne Zeile nicht einfach eine unabhängige rechtliche logische Semantik bilden kann

PS: Detailliertes Beispiel für das automatische Hinzufügen eines Semikolons am Ende der Zeile durch Javascript

Semikolon (;), das normalerweise am Ende einer Anweisungszeile verwendet wird. Der Code lautet wie folgt:

var webName = "php中文网";
var url = www.jb51.net;

Der obige Code fügt nach jeder Deklarationsanweisung ein Semikolon hinzu , was keiner weiteren Erklärung bedarf.

var webName = "php中文网"
var url = www.jb51.net

Tatsächlich kann das Semikolon weggelassen werden, aber das weggelassene Semikolon wird während der Kompilierungsphase automatisch hinzugefügt.
Sehen wir uns ein Codebeispiel an:

function done(webName){
 return
 webName
}
console.log(done("php中文网"));

Da der Compiler nach jeder Zeile automatisch ein Semikolon hinzufügt, lautet der Ausgabewert: undefiniert, nicht „php Chinese net“.

Das Obige ist der gesamte Inhalt dieses Kapitels. Weitere verwandte Tutorials finden Sie unter JavaScript-Video-Tutorial!

Stellungnahme:
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