Heim >Web-Frontend >js-Tutorial >Warum führte die Destrukturierung meines ES6-Arrays zu unerwartetem Verhalten?
ES6-Array-Destrukturierung: Das unerwartete Verhalten verstehen
In ES6 ermöglicht uns die Array-Destrukturierung, bestimmte Elemente aus einem Array zu extrahieren und ihnen zuzuweisen Variablen. Allerdings kann es zu unerwartetem Verhalten kommen, wenn bestimmte Syntaxregeln übersehen werden. Betrachten Sie den folgenden Code:
<code class="js">let a, b, c; [a, b] = ['A', 'B']; [b, c] = ['BB', 'C']; console.log(`a=${a} b=${b} c=${c}`);</code>
Erwartetes Ergebnis:
Tatsächliches Ergebnis:
Erklärung:
Wie in der Frage ausgeführt, führt das Fehlen von Semikolons zwischen Zeilen zu diesem unerwarteten Verhalten. Ohne explizite Semikolons wird der Code als einzelne Anweisung interpretiert:
<code class="js">let a = undefined, b = undefined, c = undefined; [a, b] = (['A', 'B'] [(b, c)] = ['BB', 'C']); console.log(`a=${a} b=${b} c=${c}`);</code>
Diese Aufschlüsselung erklärt das ungewöhnliche Ergebnis:
Um diese unbeabsichtigten Konsequenzen zu vermeiden, ist es Es ist wichtig, nach Anweisungen, die mit Klammern, Klammern, dem Divisionsoperator, dem Additionsoperator, dem Subtraktionsoperator oder Backticks beginnen, explizit Semikolons hinzuzufügen (durch Befolgen dieser Regel stellen wir sicher, dass jede Zeile als separate Anweisung behandelt wird). Vermeidung unerwarteter Auswertungen und falscher Ergebnisse.
Das obige ist der detaillierte Inhalt vonWarum führte die Destrukturierung meines ES6-Arrays zu unerwartetem Verhalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!