以下是创建1到80之间8个随机数的代码。它将这些随机数存入一个名为“numbers”的数组,并写入divs中。如果在if括号内增加x,则该代码可以正常运行。
如果我将“x++”放在if括号外面,经过几次尝试后,有时会创建相同的随机数字并在numbers数组内找到。然后它会跳过该div并留下空白。在if块内和if块外递增x有什么区别?
如果我将“x++”放在if括号外面,经过几次尝试后,有时会创建相同的随机数字并在numbers数组内找到。然后它会跳过该div并留下空白。在if块内和if块外递增x有什么区别?
var numbers = []
var luckyNumber;
var x = 1;
while (x <= 8) {
luckyNumber = Math.floor(Math.random() * 80 + 1);
if (numbers.indexOf(luckyNumber) == -1) {
document.getElementById('k' + x).innerHTML = luckyNumber;
numbers.push(luckyNumber);
x++;
}
}
if语句块外:
var numbers = []
var luckyNumber;
var x = 1;
while (x <= 8) {
luckyNumber = Math.floor(Math.random() * 80 + 1);
if (numbers.indexOf(luckyNumber) == -1) {
document.getElementById('k' + x).innerHTML = luckyNumber;
numbers.push(luckyNumber);
}
x++;
}
HTML:
<div id="k1">K1</div>
<div id="k2">K2</div>
<div id="k3">K3</div>
<div id="k4">K4</div>
<div id="k5">K5</div>
<div id="k6">K6</div>
<div id="k7">K7</div>
<div id="k8">K8</div>