【发布时间】:2010-11-25 08:07:30
【问题描述】:
似乎没有办法用另一个数组扩展现有 JavaScript 数组,即模拟 Python 的 extend 方法。
我想实现以下目标:
>>> a = [1, 2]
[1, 2]
>>> b = [3, 4, 5]
[3, 4, 5]
>>> SOMETHING HERE
>>> a
[1, 2, 3, 4, 5]
我知道有一个a.concat(b) 方法,但它会创建一个新数组而不是简单地扩展第一个数组。我想要一种在a 明显大于b(即不复制a)时有效的算法。
注意:这不是How to append something to an array?的重复——这里的目标是将一个数组的全部内容添加到其他,并“就地”完成,即不复制扩展数组的所有元素。
【问题讨论】:
-
来自@Toothbrush 对答案的评论:
a.push(...b)。它在概念上与最佳答案相似,但针对 ES6 进行了更新。 -
>>> a.push(...b)
标签: javascript arrays concatenation