JavaScriptの多次元配列とは?基本の使い方とサンプルコードをわかりやすく解説
JavaScriptにおいて、多次元配列は「配列の中にさらに配列を格納したい場合」に使われるデータ構造です。まずは具体的な例を見てみましょう。
たとえば、平日の気温を6時間ごとに記録したいとします。各曜日ごとに個別の配列を作ると、次のようになります。
let monday = [35, 28, 29, 31]; let tuesday = [33, 24, 25, 29]; // ...以下同様
このように複数の配列を別々に管理するのは非効率です。そこで活躍するのが多次元配列です。多次元配列とは、その名の通り「配列の配列」にすぎません。先ほどの例を多次元配列で書き直すと、1行が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次元にとどまらず、3次元やそれ以上の次元を持つことも可能です。ただし、実際の開発ではほとんどの場合2次元で十分です。3次元配列が役立つケースとしては、3Dグラフィックの座標計算や物理シミュレーションなどが挙げられます。
-
JavaScriptで2つの配列を結合する方法【concat()とスプレッド構文】
JavaScriptで2つの配列を1つにまとめたい場合、最も一般的なのが concat() メソッドです。このメソッドは、元の配列を変更することなく、複数の配列や値を連結した新しい配列を返します。 concat()メソッドの基本構文 let 新しい配列 = 配列A.concat(配列B); サンプルコード 以下は、ボタンをクリックすると2つの配列を結合し、その結果を画面に表示する完全なサンプルです。 <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8&
-
JavaScriptで2つの配列を乗算する方法|forループとmap()の実装例
JavaScriptで2つの配列の各要素同士を乗算し、その結果を新しい配列として取得する方法を解説します。基本的にはforループでインデックスを順番に処理しながら、対応する位置にある要素同士を掛け合わせていくシンプルなアプローチです。 2つの配列を乗算するサンプルコード 以下の例では、「CLICK HERE」ボタンをクリックすると、配列 arr と arr1 の対応する要素が乗算され、結果が新しい配列 multArray に格納された上で画面に表示されます。 <!DOCTYPE html> <html lang=en> <head> <meta ch