我在ActionScript 3.0中添加了两个矩阵(或可能多个)。在数组中添加索引
现在我的问题是如何添加索引数组是这样的东西?
array1[1,2,3,4] + array2[2,4,5,6] = answer[3,6,8,10]
我在ActionScript 3.0中添加了两个矩阵(或可能多个)。在数组中添加索引
现在我的问题是如何添加索引数组是这样的东西?
array1[1,2,3,4] + array2[2,4,5,6] = answer[3,6,8,10]
此功能增加了传递给它的所有阵列:
function sumOfArrays(...args):Array
{
var sum:Array = [];
var arrays:Array = [];
var longestArrayLength:uint = 0;
for (var i:int = 0, n:int = args.length; i < n; i++)
{
if (args[i] is Array)
{
arrays.push(args[i]);
longestArrayLength = args[i].length > longestArrayLength ? args[i].length : longestArrayLength;
}
}
for (var j:int = 0; j < longestArrayLength; j++)
{
sum[j] = 0;
for (i = 0; i < n; i++)
{
sum[j] += isNaN(arrays[i][j]) ? 0 : arrays[i][j];
}
}
return sum;
}
它可以像这样使用: var sum:Array = sumOfArrays(array1, array2);
这是不可能的。数组只允许通过一个索引访问。你必须为此自行编写一个方法。但是请注意,0,1,2,4,5等答案中将引用null。
你知道这个方法你指的是算法?我在php中看到了一个使用array_map和array_sum的教程,但我认为在as3中没有类似的方法,所以我必须创建一个。 –
不,它基本上是4个数组,两个源数组和两个索引。其余的将通过for循环的方法构造。 –
你能举个例子吗? –
哇......真的很有魅力..我无话可说..这正是我所需要的。非常感谢 –