如何让while循环将其结果存储在数组中,并重复10次
How do I get my while loop to store its result in an array, and repeat 10 times?
我在堆栈上看到了其他问题的链接,但老实说,它们的格式都是像我这样的JavaScript新手无法理解的。
var currentMMR = 3330;
var desiredMMR = 4000;
var playerWinrate = 50;
var array = [];
function calculate() {
//Gets the amount of games you need to win
var gamesToWin = (desiredMMR - currentMMR) / 25;
var gamesToPlay = 0;
var progress = currentMMR;
var endgoal = desiredMMR;
var numbersInArray = 0;
while(numbersInArray < 10) {
while(progress < endgoal) {
if(getRandomNumber() >= playerWinrate) {
gamesToPlay = gamesToPlay +1;
progress = progress + 25;
} else {
gamesToPlay = gamesToPlay +1;
progress = progress - 25;
}
}
array.push(gamesToPlay);
numbersInArray++;
}
alert(numbersInArray);
}
//Creates a random number between 1-100
function getRandomNumber() {
var randomNumber = Math.floor((Math.random() * 100) + (playerWinrate/10));
return randomNumber;
}
到目前为止,我所做的是创建一个while循环,从上面的变量中获取数字,用1到100之间的随机数进行一些计算,然后返回这个数字。
while(progress < endgoal) {
if(getRandomNumber() >= playerWinrate) {
gamesToPlay = gamesToPlay +1;
progress = progress + 25;
} else {
gamesToPlay = gamesToPlay +1;
progress = progress - 25;
}
}
为了让它在每次运行后存储自己的编号,并且只重复循环10次,我做了这个
while(numbersInArray < 10) {
while(progress < endgoal) {
if(getRandomNumber() >= playerWinrate) {
gamesToPlay = gamesToPlay +1;
progress = progress + 25;
} else {
gamesToPlay = gamesToPlay +1;
progress = progress - 25;
}
}
array.push(gamesToPlay);
numbersInArray++;
}
当我提醒数组进行测试时,我会得到10个数字,但它们都是一样的。
如何使原来的while循环存储重复并存储不同的变量。
在while
循环中,您需要重置几个变量。
while(numbersInArray < 10) {
gamesToPlay = 0;
progress = currentMMR;
....
否则,内部while
循环已经设置了退出条件,并且会得到与上一次迭代相同的结果。
现场示例:http://jsfiddle.net/o8ecndas/2/
相关文章:
- 我可以使用JS一次使用JSON数组中的一个字符串吗
- 多次向函数传递数组
- 数组多次出现的值
- Jquery 循环一次或在数据数组中显示一次数据
- 对 redux 缩减器中的数组进行多次更新
- 为什么此代码返回未定义的4次而不是数组值
- AJAX在数组循环中调用,只在上一次完成后调用next
- 防止数组项被选中两次
- Javascript:创建一个随机数学方程数组作为对象,20次
- 无法使用formData数组一次上载5张图片
- Javascript 循环遍历数组 10 次
- 窗口数组;多次更改值
- 我怎样才能使数组一次显示一个延迟
- 如何让while循环将其结果存储在数组中,并重复10次
- 为什么这是循环通过数组4次
- 如何添加值到javascript数组两次或更多
- 最快的方式通过数组多次迭代,同时删除项目
- 将数组项添加到数组X次
- 为什么对象值被推入数组 3 次
- 试图返回要查看的对象数组,得到“达到10次$digest()迭代”