AS3将阵列添加到另一个阵列

问题描述:

我的问题的示例。AS3将阵列添加到另一个阵列

var array_1:Array = new Array(); 
array_1[0] = [2,4,6,8]; 

var array_2:array = new Array(); 
array_2[0] = [10,12,14,16]; 
array_2[1] = [18,20,22,24]; 

// and the out come I want it to be is this 
trace(array_1[0]) // 2,4,6,8,10,12,14,16,20,22,24 

// I did try array_1[0] += array_2[0] but it didn't work currently 

任何建议都会很棒。

+2

尝试'CONCAT()'方法:http://help.adobe.com/ en_US/FlashPlatform/reference/actionscript/3/Array.html#concat() – Cherniv 2014-09-10 19:12:06

+0

[AS3最快的方式来合并多个数组](http://*.com/questions/7551008/as3-fastest-way-to -merge-multiple-arrays) – 2014-09-10 19:12:23

+0

这里也有这篇文章:http://*.com/questions/7551008/as3-fastest-way-to-merge-multiple-arrays – 2014-09-10 19:12:43

这将执行你在找什么,也可以让你多行数据添加到array_1array_2

var array_1:Array = new Array(); 
array_1[0] = [2,4,6,8]; 

var array_2:Array = new Array(); 
array_2[0] = [10,12,14,16]; 
array_2[1] = [18,20,22,24]; 

var combinedArray:Array = new Array(); 
for(var i:int = 0; i < array_1.length; i++) { 
    combinedArray = combinedArray.concat(array_1[i]); 
} 
for(i = 0; i < array_2.length; i++) { 
    combinedArray = combinedArray.concat(array_2[i]); 
} 

trace(combinedArray); 
+1

它工作完美,谢谢。 – 2014-09-10 19:28:45

正如评论所说,你可以使用concat方法:

var array_1:Array = new Array(); 
array_1[0] = [2,4,6,8]; 

var array_2:array = new Array(); 
array_2[0] = [10,12,14,16]; 
array_2[1] = [18,20,22,24]; 

array_1[0] = array_1[0].concat(array_2[0]).concat(array_2[1]); 

这当然是很凌乱看。我想知道为什么你没有明显的理由将数组存储在其他数组中。

+0

凌乱的原因是因为array_2是一个临时阵列是在进入array_1的主阵列之前可能会改变几次。 2014-09-10 19:28:17