数组的所有偶数值的总和?AS3

时间:2014-03-24 20:48:54

标签: actionscript-3 flash

我需要对我的数组中的所有偶数值求和,所以这里有一个例子:

Array
(
  [0] => 1
  [1] => 1
  [2] => 1
  [3] => 1
  [4] => 4
  [5] => 6
  [6] => 6
)

寻找一种方法来对所有相同值进行求和:

Array
(
  [1] => 4
  [4] => 1
  [6] => 2
)

有什么想法吗?

3 个答案:

答案 0 :(得分:2)

var buckets:Object = {};

var data:Array = [1, 1, 1, 1, 4, 6, 6];

for(var i=0; i<data.length; ++i) {
    if(!buckets[data[i]]) {
        buckets[data[i]] = 1;
    } else {
        buckets[data[i]]++;
    }
}

trace(buckets);

答案 1 :(得分:1)

试试这个:

var sum:uint = 0;                                    //Setting the sum value to 0;
for(var i:uint = 0; i < nameOfArray.length; i++){    //Loops trough the array

    if(nameOfArray[i] % 2 == 0 ){                    //If the number is an even number

    sum+=nameOfArray[i];                             //Add that even number to the sum variable
    }

}

trace(sum)                                           // Prints out the sum 

答案 2 :(得分:0)

您可以制作地图&amp;循环遍历您的数组,将值添加到您的地图中。如果你不知道地图是什么,它基本上是一个集合类型。它是使用一对,使用一个独特的密钥和&amp;创建的。与之相关的值。在您的情况下,唯一键将是数组中的数字值,值将是它出现的次数(频率)。