2

現在、私はWebサイトタイプのプロジェクトを行っています。私はJavaScriptを初めて使用しています。だから私は文法のいくつかの部分に悩まされてきました。基本的には、入れ子配列arrに 'id'と 'value'を表示しようとしています。Javaスクリプトと多次元配列の操作

var myArray = new Array({id:'1', value:'een', arr: new Array({id:'10', value:'een'})}; 
var obj = myArray[0]; 
document.write(obj.id); 

これは、ID 1を印刷するが、これは私がしてください知っている行うにはもっと簡単な方法がある場合は、idにも10

にアクセスする方法がわからないイムう!

+1

、 '新しいArray()'が、リテラル '[]'配列を使用しません。 – ThiefMaster

答えて

0

適切な参照は次のようになります。

obj.arr[0].id 

PS:Google Chromeの開発者コンソールは

+0

私はこのようなサイズ10の10のような配列を初期化したいのですが、どうすればいいですか? – user1271792

+0

私はこの目的のためにリテラルを提案しますが、それはかなり荒れていますが、周りには道がありません。通常、そのようなjavascript配列は、ある種類のAJAXサービス(JSONは構文的に重大なjavasciptリテラルであり、ちょうど評価することができます)からサーバーから来ています。これらはバックエンドデータモデルから自動的に変換されます –

0

アレイ全体を反復することはできません。

ご注文いただいた場合は、問題では代わりにオブジェクトを使用していません:

var myObject = { 
    1: {id:'1', value:'een'}, 
    10: {id:'10', value:'een'} 
}; 
var obj = myArray[10]; 
document.write(obj.id); 

あなたの配列のネスティングが意図される場合は、ここで何をしたいです:

var obj = myArray[0].arr[0]; 

デモ:

> var myArray = new Array({id:'1', value:'een', arr: new Array({id:'10', value:'een'})}); 
> myArray[0].arr[0] 
{ id: '10', value: 'een' } 
2

まず、new Arrayコンストラクタを使用しないでください。配列リテラル[...]を定義するだけです。だからあなたのmyArrayは、次のようになります。10idに取得するには

var myArray = [{id:'1', value:'een', arr: [{id:'10', value:'een'}]}]; 

、あなたはmyArray[0].arr[0].id;にアクセスする必要があります。

+0

'[0]'、内部配列の '[1]'ではありません – ThiefMaster

+0

なぜ '[1]'と書いたのですか?私は考えていないXD –

0

をdereefrecing javascriptオブジェクトをテストするためのGOOTの遊び場である私はのための配列は、なぜ独自のオブジェクトを作成していないになるだろうか? FYI

http://www.w3schools.com/js/js_objects.asp

+0

オブジェクトの配列を作成したいのですが、どのようにするかわからない – user1271792