如何在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}})
答案 0 :(得分: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'); }
});
});
答案 1 :(得分:0)
将其分配给变量并使用括号表示法访问对象属性。
var mydata = ({...});
mydata['1']['3'] //1
答案 2 :(得分:0)
这不是数组,而是对象的对象。因此迭代每个对象并检查是否存在嵌套对象。 Example 旁注:展示一些努力,更好的是,尝试搜索一下,谷歌是你最好的朋友。
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 );