1. ホーム
  2. ジャバスクリプト

[解決済み】JavaScriptで[5,6,8,7][1,2]=8が成り立つのはなぜ?

2022-04-01 08:13:36

質問

このクセはどうにも理解できない。

[1,2,3,4,5,6][1,2,3]; // 4
[1,2,3,4,5,6][1,2]; // 3

知っている [1,2,3] + [1,2] = "1,2,31,2" が、どのようなタイプか、どのような操作をしているのかがわからない。

どのように解決するのですか?

[1,2,3,4,5,6][1,2,3];
      ^         ^
      |         |
    array       + — array subscript access operation,
                    where index is `1,2,3`,
                    which is an expression that evaluates to `3`.

2番目の [...] は配列にはなり得ないので、配列の添え字操作になります。そして、添え字オペレーションの内容は、オペランドの区切りリストではなく、1つの式になります。

カンマ演算子についてもっと読む こちら .