JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

JavaScriptの多次元配列の基本と使い方を徹底解説

配列の中にさらに配列を格納したい場合に活用されるのが、多次元配列です。まずは具体的な例を見てみましょう。たとえば、平日の各日について6時間ごとの気温を記録したいとします。単純に書くと、次のようになります。

let monday = [35, 28, 29, 31];
let tuesday = [33, 24, 25, 29];
// ...

このようなケースでは、多次元配列を使うのが適しています。多次元配列とは、その名の通り「配列の配列」のことです。先ほどの例を発展させると、各行が1日を表し、行内の各要素が気温の記録を表すことになります。

let temps = [
    [35, 28, 29, 31],
    [33, 24, 25, 29]
];

配列へのアクセス方法

配列へのアクセスは連結して行うことができます。たとえば、2行目の3番目の要素を取得したい場合は、temps[1][2] と指定します。インデックスの順序は「行 → 列」の順であることに注意してください。

forループを使った反復処理

多次元配列のすべての要素を処理するには、forループを複数組み合わせます。次の例を見てみましょう。

let temps = [
    [35, 28, 29, 31],
    [33, 24, 25, 29]
];

for (let i = 0; i < 2; i++) {
    console.log("Row #" + i);
    for (let j = 0; j < 4; j++) {
        console.log(i, j, temps[i][j]);
    }
}

このコードを実行すると、次のような出力が得られます。

Row #0
0 0 35
0 1 28
0 2 29
0 3 31
Row #1
1 0 33
1 1 24
1 2 25
1 3 29

3次元以上の配列について

多次元配列は2次元だけでなく、それ以上の次元を持つことも可能です。実際には2次元で十分なケースがほとんどですが、3Dグラフィックスの操作や物理演算の計算など、3次元配列が役立つ場面もあります。用途に応じて適切な次元数を選択することが、効率的なコードを書くポイントです。

  1. JavaScriptのconstとletの違いを徹底解説!ブロックスコープ変数の基本と使い方

    JavaScriptにおけるconstとletの基本const と let は、ES2015(ES6)で導入された変数宣言用のキーワードです。どちらもブロックスコープ(波括弧 { } で囲まれた範囲)に対応しているのが特徴で、関数スコープしか持たなかった従来の var とは異なる挙動を示します。両者の大きな違いは再代入の可否です。letで宣言した変数は後から何度でも値を再代入できますが、constで宣言した変数は再代入しようとするとエラー(TypeError)が発生します。letとconstの主な違い項目letconst再代入可能不可(エラー発生)スコープブロックスコープブロックスコープ宣言時

  2. 【JavaScript】filterとjoinを組み合わせて、条件に合う配列要素だけを結合する方法

    JavaScriptでは、filter()メソッドとjoin()メソッドを組み合わせることで、条件を満たす要素だけを抽出し、それらを任意の区切り文字で1つの文字列に結合できます。本記事では、配列の中から「2で割り切れる要素(偶数)」だけを取り出して結合する具体例を、動作するサンプルコードとともに解説します。 処理の流れ:filter() と join() の役割 filter():コールバック関数が true を返した要素だけを集めた新しい配列を作成します。元の配列は変更されません。 join():配列内のすべての要素を、引数で指定した区切り文字で連結し、1つの文字列として返します。引数