ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript で `[5, 6, 8, 7][1, 2]` が 8 を返すのはなぜですか?

JavaScript で `[5, 6, 8, 7][1, 2]` が 8 を返すのはなぜですか?

DDD
リリース: 2024-11-01 10:25:30
オリジナル
381 人が閲覧しました

Why Does `[5, 6, 8, 7][1, 2]` Return 8 in JavaScript?

JavaScript における配列の添字の癖を理解する

JavaScript では、配列の添字演算が驚くべき結果をもたらすことがあり、多くの人がその結果がなぜ起こるのか疑問に思っています。期待とは異なります。次の例を考えてみましょう:

<code class="javascript">[5, 6, 8, 7][1, 2] = 8</code>
ログイン後にコピー

この式は 8 を返すのはなぜですか?

この動作は、JavaScript が配列以外の 2 番目のオペランドを使用して配列添え字演算を処理する方法に起因します。単一の数値ではなく、カンマ区切りの式のリストで配列のインデックスが付けられている場合、式は順番に評価され、最後の式の結果がインデックスとして使用されます。

この場合、式は[1, 2] は次のように評価されます。

  • 1 は 1 に評価されます。
  • 2 は 2 に評価されます。

その結果、配列添字演算は次のようになります。

<code class="javascript">[5, 6, 8, 7][2]</code>
ログイン後にコピー

これは 8 と評価され、これは配列内のインデックス 2 の要素の値です。

追加の例

さらに説明するには:

<code class="javascript">[1, 2, 3, 4, 5, 6][1, 2, 3]; // 4
[1, 2, 3, 4, 5, 6][1, 2]; // 3</code>
ログイン後にコピー

これらの例は同じ動作を示しています。配列添字演算の 2 番目のオペランドは単一の式として評価され、配列内の対応する要素にアクセスするために使用されるインデックス値が得られます。

以上がJavaScript で `[5, 6, 8, 7][1, 2]` が 8 を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート