You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 01:50:31