三維陣列考慮這個陣列排序在Javascript
var LIST =[];
LIST['C']=[];
LIST['B']=[];
LIST['C']['cc']=[];
LIST['B']['bb']=[];
LIST['C']['cc'].push('cc0');
LIST['C']['cc'].push('cc1');
LIST['C']['cc'].push('cc2');
LIST['B']['bb'].push('bb0');
LIST['B']['bb'].push('bb1');
LIST['B']['bb'].push('bb2');
我可以通過這個數組循環像
for(var i in LIST){
console.log(i)//C,B
var level1=LIST[i];
for(var j in level1){
console.log(j)//cc,bb
// etc...
}
}
精細..我有幾個基本問題。
1.如何對每個級別的數組進行排序?
一個級別可以按.sort(fn)方法排序。我如何轉移到內在層面?
2.爲什麼indexOf
方法無法找到前兩個級別的元素?
如果是因爲非字符串參數的..我怎麼能在搜索數組的數組的項目,如果該項目不是字符串?
3.How for(var i in LIST)
作品? 我只需要索引的一個基本的瞭解,並通過陣列循環..
謝謝..
對於大多數代碼,您應該使用對象字面值'{}'。數組([[]')應該有增量數字鍵值。 – zzzzBov
@zzzzBov是正確的 - 你的對象是數組實例,但你沒有正確使用它們。 – Pointy
要使用具有回調函數的[Array.sort](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/sort「MDN參考」)方法對數組進行排序。 –