开发者

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

I have an array, as below:

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

to this array I want to add another in the same format:

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

I've tried using:

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

But consol开发者_如何学编程e.log(newArray); outputs:

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

So I'm assuming that I'm missing something obvious. Or attempting something stupid...help?


jQuery is not needed for this. Just use the Array's .push() method to add it to the main array.

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

cString.push( test );

What $.merge() does is it walks through the second array you pass it and copies its items one by one into the first.


EDIT:

If you didn't want to modify the original array, you could make a copy of it first, and .push() the new Array into the copy.

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 );


In addition to push as described by patrick, if you want to create a new list rather than changing the old, you can add arrays together with Array#concat:

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


you can use merge function like this

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

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜