Comprendre la bizarrerie de l'indice de tableau en JavaScript
En JavaScript, une opération d'indice de tableau peut parfois conduire à des résultats surprenants, laissant beaucoup se demander pourquoi le résultat diffère des attentes. Prenons l'exemple suivant :
<code class="javascript">[5, 6, 8, 7][1, 2] = 8</code>
Pourquoi cette expression renvoie-t-elle 8 ?
Ce comportement découle de la façon dont JavaScript gère les opérations d'indice de tableau avec des seconds opérandes non-tableau. Lorsqu'un tableau est indexé avec une liste d'expressions séparées par des virgules au lieu d'un seul nombre, les expressions sont évaluées séquentiellement et le résultat de la dernière expression est utilisé comme index.
Dans ce cas, l'expression [1, 2] est évalué comme suit :
En conséquence, l'opération d'indice du tableau devient :
<code class="javascript">[5, 6, 8, 7][2]</code>
Ceci est évalué à 8, qui est la valeur de l'élément à l'index 2 dans le tableau.
Exemples supplémentaires
Pour illustrer plus loin :
<code class="javascript">[1, 2, 3, 4, 5, 6][1, 2, 3]; // 4 [1, 2, 3, 4, 5, 6][1, 2]; // 3</code>
Ces exemples présentent le même comportement. Le deuxième opérande de l'opération d'indice de tableau est évalué comme une expression unique, ce qui donne la valeur d'index utilisée pour accéder à l'élément correspondant dans le tableau.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!