如何修改getNumber函数,使重新游戏时生成新随机数?
问题修复:重新游戏时生成新随机数
你的代码问题出在重新游戏的逻辑里:你调用了getNumber()生成新随机数,但没有把这个新数值赋值给compNumber变量,导致这个变量始终保留着第一局的随机数,所以新游戏还是用旧数。
只需要修改重新游戏时的代码,把生成的新随机数赋值给compNumber即可:
"use strict" function getNumber(){ return (Math.floor(Math.random()*100+1)); } var compNumber = getNumber(); var chances = 0; let playAgain = false; do { playAgain = false; var userNumber = prompt("Enter your number."); userNumber = Number(userNumber); if(userNumber>compNumber){ console.log("your number is greater."); } else if(userNumber<compNumber){ console.log("your number is lesser."); } else{ console.log(`congratulations you guessed it right and your score is ${100-chances}`); playAgain = confirm("do you want to play again ?"); if(playAgain){ // 将新生成的随机数赋值给compNumber,更新目标数值 compNumber = getNumber(); chances = 0; } } chances++ }while(userNumber!== compNumber && chances<=100 || playAgain);
核心修改点就是把getNumber();改成compNumber = getNumber();,这样每次重新游戏时,compNumber都会被更新为新的随机数,新游戏就会使用全新的目标数值了。
内容的提问来源于stack exchange,提问作者vikas deshmukh
相关产品推荐
相关产品推荐

