我想在任何数组的元素中添加一些数字但是我得到了NaN。我知道为什么我们都拥有NaN。只是想知道一种做类似事情的方法。
var a = [];
for(var i=0;i<6;i++){
for(var j=0;j<2;j++){
var random_number = Math.floor(Math.random() * 10) + 1;
a[i] += random_number
}
}
console.log(a) //[NaN, NaN, NaN, NaN, NaN, NaN]
&#13;
答案 0 :(得分:1)
+= ...
将...
追加到您变量中之前的内容中。在这里,它将一个数字附加到一个未设置的值,给出NaN
。
设置数组值时,只需删除+=
:
var a = [];
for(var i=0;i<6;i++){
for(var j=0;j<2;j++){
var random_number = Math.floor(Math.random() * 10) + 1;
a[i] = random_number;
}
}
console.log(a)
答案 1 :(得分:1)
您可以采用默认值零而不是undefined
进行添加。
var a = [],
i, j, random_number;
for (i = 0; i < 6; i++) {
for (j = 0; j < 2; j++) {
random_number = Math.floor(Math.random() * 10) + 1;
a[i] = (a[i] || 0) + random_number;
}
}
console.log(a)
&#13;
答案 2 :(得分:0)
只需删除&#39; + =&#39; ,而只需使用&#39; =&#39;
您正在为未分配的变量分配编号。这就是你收到NaN错误的原因。