如何在JavaScript中合并两个数组以创建一个数组?

9
假设我有两个JavaScript数组:
```javascript ```
var geoff = ['one', 'two'];
var degeoff = ['three', 'four'];

如何合并这两个数组,得到以下形式的数组?
var geoffdegeoff = ['one', 'two', 'three', 'four'];
2个回答

15
var geoffdegeoff = geoff.concat(degeoff);

3
我偶然发现了这个内容,并想增加一种额外的方法。
注意:我看到你想创建第三个新变量。
使用.concat很好,但是您必须创建一个新数组(除非覆盖原始数组)。
如果您想将数组“second”合并/组合到数组“first”中,怎么办?
这里有一个巧妙的方法。
// using apply
var first = ['aa','bb','cc'];
var second = ['dd','ee'];
first.push.apply(first, second);
first;

或者

Array.prototype.push.apply(first, second); 
first;

Array.prototype 等于 [] :) - Ja͢ck
1
我不认为你真正理解我的观点;[].push.apply(first, second) 是我想表达的意思 :) - Ja͢ck
1
这对于大数组非常有用,因为真正的追加数据可以避免进行完整的数组复制。 - Ja͢ck
@user2357112 是的,它们并不完全相同,因为在控制台上输入它将给你 true,仅仅是节省了一些类型工作。 - Ja͢ck
你是对的,我误读了你的意图。现在我明白你的意思了。哈哈,谢谢。 - james emanon
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接