2012-08-12 99 views
-1

我有下面提到的數組。這些數組值來自數據庫:動態創建子陣列

如果循環找到APP字符串,那麼它應該將剩餘字段(包括APP值)添加到新數組。怎麼辦..幫助plz

var applications=new Array("App", "sub", "child", "App1", "sub1", "sub0", "child1", "App2", "sub2", "child2"); 

回答

2

您的意思是這樣的?

var applicationArrays = []; 
for (var i = 0; i < applications.length; i++) { 
    if (applications[i].search("App") != -1) 
     applicationArrays[applicationArrays.length] = [applications[i]]; 
    else 
     applicationArrays[applicationArrays.length - 1].push(applications[i]); 
}; 

你的陣列將產生如下:

chrome console log

+0

如果字符串以APP開始,然後從那裏創建新的數組。它應該自動爲上面的Array創建3個數組,結果如下。注意數組b有4個值。 數組b(「App」,「sub」,「child」) 數組b(「App1」,「sub1」,「sub0」,「child1」) array c(「App2」,「sub2」 ,「child2」) – Nash 2012-08-12 22:05:39

+0

所以你想要3個單獨的數組而不是數組數組? – jeff 2012-08-12 22:06:42

+1

_「它應該自動創建3個數組」_--這就是jeff的代碼所做的(+1),將每個子數組作爲「applicationArrays」的一個元素。據推測,您需要根據此答案將單個數組添加到某個「主」數組中,因爲您不知道將創建多少個數組。如果您想要別的東西,請編輯您的問題以準確顯示所需輸出的內容。 – nnnnnn 2012-08-12 22:08:03