出於某種原因,我可以將JSON對象推送到我的數組「列表」中,但是當我調用它的.length時,看起來我得到的是字符數而不是項數。爲什麼我的array.length返回這麼高的數字?
更新:查看解答的答案。我的腳本沒有返回個字符,它正在以指數形式循環。
$.getJSON('[omitted].php?callback=?',function(d,item){
var list = []
alert('Length: '+d.length) // d consists of 271 JSON objects, d.length = 271
for (i=0;i<d.length;i++){
$.each(d,function(){ // for each JSON object we add...
list.push({'name':this.name,'href':this.href,'img':this.img})
})
if (i==d.length){
alert('Completed - Length: '+list.length) // list.length = 44711. Why?
}
}
})
需要注意的是,當我使用alert(名單)我看到:
[object,Object][object,Object][object,Object] ...
而不是一個數組:
[[object,Object][object,Object][object,Object] ... ]
[jsFiddle](http://jsfiddle.net),請問? (至於它沒有顯示爲數組,隱式連接字符是','。括號不會被添加。) – Ryan 2012-04-14 23:33:48