Array-Subskriptions-Quirk in JavaScript verstehen
In JavaScript kann eine Array-Subskriptionsoperation manchmal zu überraschenden Ergebnissen führen, sodass sich viele fragen, warum das Ergebnis so ist weicht von den Erwartungen ab. Betrachten Sie das folgende Beispiel:
<code class="javascript">[5, 6, 8, 7][1, 2] = 8</code>
Warum gibt dieser Ausdruck 8 zurück?
Dieses Verhalten ergibt sich aus der Art und Weise, wie JavaScript Array-Indexoperationen mit zweiten Operanden verarbeitet, die kein Array sind. Wenn ein Array mit einer durch Kommas getrennten Liste von Ausdrücken anstelle einer einzelnen Zahl indiziert wird, werden die Ausdrücke nacheinander ausgewertet und das Ergebnis des letzten Ausdrucks wird als Index verwendet.
In diesem Fall der Ausdruck [1, 2] wird wie folgt ausgewertet:
Als Ergebnis Die Array-Indexoperation wird zu:
<code class="javascript">[5, 6, 8, 7][2]</code>
Dies ergibt 8, was dem Wert des Elements an Index 2 im Array entspricht.
Zusätzliche Beispiele
Zur weiteren Veranschaulichung:
<code class="javascript">[1, 2, 3, 4, 5, 6][1, 2, 3]; // 4 [1, 2, 3, 4, 5, 6][1, 2]; // 3</code>
Diese Beispiele zeigen das gleiche Verhalten. Der zweite Operand in der Array-Indexoperation wird als einzelner Ausdruck ausgewertet, was zu dem Indexwert führt, der für den Zugriff auf das entsprechende Element im Array verwendet wird.
Das obige ist der detaillierte Inhalt vonWarum gibt „[5, 6, 8, 7][1, 2]' in JavaScript 8 zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!