デジタル・インフォメーション/デジタル・フォー・ミー [PC等のデジタル製品の疑問、トラブル解決に]
PC・デジタル製品の疑問、困ったことを検索。
:AND検索 :OR検索
【 【JavaScript】多次元配列 】
更新日時:2013年4月18日(木) 16:50:12
投稿日時:2013年4月18日(木) 16:41:35
このエントリーをはてなブックマークに追加

配列の配列の作り方。<連想配列(ハッシュ)の連想配列

配列(数値添え字)も連想配列(連想、文字列添え字)も
やり方は同じだと思います。


配列変数hogeを宣言して、多次元配列にしようと思います。
var hoge=new Array();
↑これで配列の宣言が出来ました。
多次元配列(配列の中に配列)にする場合はさらに。
hoge["key1"]=new Array();
とします。
変数hogeの中にあるkey1という要素も配列ですよと宣言してあげます。
これをしないと配列として受け付けてくれません。
仮に
var hoge=new Array();
hoge["key1"]["child"]="key1の子";
としても値はundefinedで終わってしまいます。

ちなみに、new Array();で宣言していますが、
var hoge=new Array();
var hoge=new Object();
var hoge={};
上記3つのうちどれでもOKみたいです。<厳密にイイかどうかはわかりませんw
ただ、多次元配列と通常の配列の区別を付けるために
Object()か{}を使用する方がいいかもしれません。


下記は多次元連想配列の宣言と、alertでキーと値の出力、
前回の記事の連想配列(ハッシュ)の要素数を取得する
スクリプトを組み合わせたサンプルです。


配列はArrayで宣言しています。

var hoge=new Array();
hoge["key1"]=new Array();
hoge["key1"]["child1"]="hoge_key1_child1";
hoge["key1"]["child2"]="hoge_key1_child2";
hoge["key1"]["child3"]="hoge_key1_child3";
hoge["key1"]["child4"]="hoge_key1_child4";
hoge["key1"]["child5"]="hoge_key1_child5";
for(var key in hoge["key1"]){
alert("key["+key+"] value["+hoge["key1"][key]+"]");
}
var cnt=Get_Hash_Length(hoge["key1"]);
alert("要素数[ "+cnt+" ]");
}

【 Digital Information / Digital For Me】
Copyright (C) Gontaro-Systems. All Rights Reserved.