簡體   English   中英

如何使用jQuery將數組添加到數組數組?

[英]How can I add an array to an array of arrays using jQuery?

我有一個數組,如下所示:

var cString =   [
            ['1','Techdirt','www.techdirt.com'],
            ['2','Slashdot','slashdot.org'],
            ['3','Wired','wired.com']
            ];

到這個數組我想以相同的格式添加另一個:

var test = ['4','Stackoverflow','stackoverflow.com']

我嘗試過使用:

var newArray = $.merge(cString, test);

但是console.log(newArray); 輸出:

[►Array,►Array,►Array,'4','Stackoverflow','stackoverflow.com']

所以我假設我錯過了一些明顯的東西。 或嘗試一些愚蠢的......幫助?

這不需要jQuery。 只需使用Array的.push()方法將其添加到主數組中。

var test = ['4','Stackoverflow','stackoverflow.com']

cString.push( test );

$.merge()作用是遍歷傳遞它的第二個數組,並將其項目逐個復制到第一個數組中。


編輯:

如果您不想修改原始數組,可以先復制它,然后將.push()新數組復制到副本中。

var cString =   [
            ['1','Techdirt','www.techdirt.com'],
            ['2','Slashdot','slashdot.org'],
            ['3','Wired','wired.com']
            ];

var test = ['4','Stackoverflow','stackoverflow.com']

var newArray = cString.slice();

newArray.push( test );

你可以使用像這樣的合並功能

var newArray = $.merge($.merge([], cString), test);

除了patrick所描述的push之外,如果你想創建一個列表而不是更改舊列表,你可以將數組與Array#concat一起添加:

var newArray= cString.concat([['4','Stackoverflow','stackoverflow.com']]);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM