为了账号安全,请及时绑定邮箱和手机立即绑定

将数组项复制到另一个数组中

将数组项复制到另一个数组中

慕容3067478 2019-08-23 15:59:50
将数组项复制到另一个数组中我有一个JavaScript数组dataArray,我想推入一个新的数组newArray。除了我不想newArray[0]成为dataArray。我想将所有项目推入新数组:var newArray = [];newArray.pushValues(dataArray1);newArray.pushValues(dataArray2);// ...甚至更好:var newArray = new Array (    dataArray1.values(),    dataArray2.values(),    // ... where values() (or something equivalent) would push the individual values into the array, rather than the array itself);所以现在新数组包含各个数据数组的所有值。是否有一些像pushValues现有的速记,所以我不必迭代每个人dataArray,逐个添加项目?
查看完整描述

3 回答

?
杨__羊羊

TA贡献1943条经验 获得超7个赞

使用concat函数,如下所示:

var arrayA = [1, 2];var arrayB = [3, 4];var newArray = arrayA.concat(arrayB);

newArray将是[1, 2, 3, 4]arrayAarrayB保持不变; concat为结果创建并返回一个新数组)。


查看完整回答
反对 回复 2019-08-23
?
红颜莎娜

TA贡献1842条经验 获得超12个赞

如果要修改原始数组,可以传播并推送:


var source = [1, 2, 3];

var range = [5, 6, 7];

var length = source.push(...range);


console.log(source); // [ 1, 2, 3, 5, 6, 7 ]

console.log(length); // 6

如果你想确保只有相同类型的项目进入source数组(例如,不混合数字和字符串),那么使用TypeScript。


/**

 * Adds the items of the specified range array to the end of the source array.

 * Use this function to make sure only items of the same type go in the source array.

 */

function addRange<T>(source: T[], range: T[]) {

    source.push(...range);

}


查看完整回答
反对 回复 2019-08-23
  • 3 回答
  • 0 关注
  • 1311 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信