Heim >Web-Frontend >js-Tutorial >Warum schlägt die „return'-Anweisung von JavaScript mit einem Rückgabewert in einer neuen Zeile fehl?
Warum die Return-Anweisung von Javascript mit dem Rückgabewert in einer neuen Zeile fehlschlägt
Betrachten Sie den folgenden JavaScript-Code:
<code class="javascript">function correct() { return 15; } function wrong() { return 15; } console.log("correct() called : "+correct()); console.log("wrong() called : "+wrong());</code>
Korrigieren Sie in diesem Beispiel () gibt korrekterweise 15 zurück, während false() aus unerklärlichen Gründen undefiniert zurückgibt. Dieses Verhalten unterscheidet sich von anderen Programmiersprachen. Die folgende alternative Implementierung von false() behebt das Problem:
<code class="javascript">function wrong() { return( 15); }</code>
Warum passiert das?
JS-Interpreter fügen optional Semikolons an bestimmten Zeilenumbrüchen ein, wenn sie dies für notwendig erachten. Allerdings kann ihr Urteil von der Absicht abweichen.
Wenn auf eine Return-Anweisung ein Zeilenumbruch folgt, fügt der JS-Interpreter nach der Return-Anweisung ein Semikolon ein. Dies führt dazu, dass der Code der Funktion „falsch()“ wie folgt geändert wird:
<code class="javascript">function wrong() { return; 15; }</code>
Das ist jetzt falsch.
Im Gegensatz dazu startet die geänderte Version von „falsch()“ mit den hinzugefügten Klammern einen Ausdruck mit einer offenen Klammer. Der JS-Interpreter erkennt dies und verzichtet auf das Einfügen eines Semikolons, um das beabsichtigte Verhalten beizubehalten.
Das obige ist der detaillierte Inhalt vonWarum schlägt die „return'-Anweisung von JavaScript mit einem Rückgabewert in einer neuen Zeile fehl?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!