我需要有关five.myArraysCombined
属性的帮助。
我需要它等于1个数组(它目前在小提琴中执行),并且我需要它不将任何数字加在一起。 (因此,数组中的每个数字都不应超过20,就像其他数组中的数字均不超过20)
http://jsfiddle.net/Dc6HN/1/
例如,如果五个数组是这样的
five.myArray1 = [7,2,9,19,3];
five.myArray2 = [6,18,8,1,7];
five.myArray3 = [7,19,4,8,2];
five.myArray4 = [11,9,1,14,5];
five.myArray5 = [3,18,8,9,2];
那么所有这些数组的组合应该像这样
five.myArraysCombined = [7,2,9,19,3,6,18,8,1,7,7,19,4,8,2,11,9,1,14,5,3,18,8,9,2];
相关代码:
function theNumberClass() {
this.myArray = [[],[],[],[],[]];
this.myArraysCombined = [];
}
var five = new theNumberClass();
function prePickNumbers(objName, theNum, theSumNum, theMaxNum, theMinNum) {
var zzz = [];
for (var x = 0; x < theNum; x += 1) {
pickNumbers(objName.myArray[x], theNum, theSumNum, theMaxNum, theMinNum);
zzz += objName.myArray[x];
}
objName.myArraysCombined.push(zzz);
}
prePickNumbers(five, 5, 40, 20, 1);
我的最新尝试是使用
var zzz
,然后将其推入属性,但是当我这样做时,有时会把数组中的数字相加,这不是我所需要的。我也尝试过使用
.concat()
进行多次尝试,但似乎将其转换为字符串,有时还会加上数字。 最佳答案
我猜这是“ + =”运算符。此运算符用于对值求和,而不是向数组添加新元素。以下面的代码行为例:
zzz += objName.myArray[x];
我猜是“ myArray [x]”被添加到zzz的值,而不是被附加到数组的末尾。在javascript中向数组添加元素时,push是最好的选择。编写此行的更好方法是:
zzz.push(objName.myArray[x]);
这个问题有点令人困惑,所以我不确定这是否是您要寻找的东西,但希望它将对您有所帮助。
关于javascript - 多个阵列成一个阵列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21114358/