-3

この形式の配列にアクセスするには、javascript で document.write() を使用するにはどうすればよいですか?

({"1":{"1":1,"2":1,"3":1},
  "2":{"1":1,"2":1,"3":2},
  "3":{"1":1,"2":2,"3":1},
  "4":{"1":1,"2":2,"3":2},
  "5":{"1":2,"2":1,"3":1,"4":1},
  "6":{"1":2,"2":1,"3":1,"4":2},
  "7":{"1":2,"2":1,"3":2},
  "8":{"1":2,"2":2,"3":1},
  "9":{"1":2,"2":2,"3":2}})
4

3 に答える 3

1

たとえば、最初の配列の最初の要素にアクセスする場合は、次のように記述します。

theData=({"1":{"1":1,"2":1,"3":1},
  "2":{"1":1,"2":1,"3":2},
  "3":{"1":1,"2":2,"3":1},
  "4":{"1":1,"2":2,"3":2},
  "5":{"1":2,"2":1,"3":1,"4":1},
  "6":{"1":2,"2":1,"3":1,"4":2},
  "7":{"1":2,"2":1,"3":2},
  "8":{"1":2,"2":2,"3":1},
  "9":{"1":2,"2":2,"3":2}});
document.write(theData[1][1]); //1

明らかにjQueryを使用しているため、要素を印刷する方法は次のとおりです。

$(document).ready(function() { 
   $.getJSON('array.php?callback=?', function(data) {
     if(data) {
         $.each(data,function(key,val){
              $.each(val,function(subkey,subval){
                  document.write(subval+" ");
              });
              document.write('<br/>');
         });
     } 
     else { alert('error'); } 
   }); 

});

于 2012-11-25T12:21:55.110 に答える
0

これを変数に割り当て、ブラケット表記を使用してオブジェクト プロパティにアクセスします。

var mydata = ({...});

mydata['1']['3'] //1
于 2012-11-25T12:21:32.257 に答える
0

これは配列ではなく、オブジェクトのオブジェクトです。したがって、すべてのオブジェクトを繰り返し処理し、ネストされたオブジェクトがあるかどうかを確認します。 補足: いくつかの努力を示してください。できれば、もう少し検索してみてください。Google はあなたの親友です。

function traverse ( data )
{
    for ( var index in data )
    {
        if ( typeof data[index] === "object" )
        {
            traverse ( data[index] );
        } else {
            document.write ( data[index] );
        }
    }
    document.write ( "<br/>" );
}

traverse ( a );
于 2012-11-25T12:34:33.610 に答える