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

关于JavaScript猜数字游戏及console.log()输出异常的技术问询

嘿,我来帮你搞定这两个猜数字游戏的问题!咱们直接看修正后的代码,再拆解每个问题的解决思路:

// 生成目标数字,这里用固定值10做示例,实际可替换为随机数:Math.floor(Math.random() * 100) + 1
const correctNumber = 10;
let guessCount = 0;
let isGuessed = false;

while (guessCount < 5 && !isGuessed) {
    const userGuess = parseInt(prompt("请输入一个1-100之间的数字:"));
    guessCount++;

    // 可选:增加输入有效性验证
    if (isNaN(userGuess)) {
        console.log(`第${guessCount}次猜测:输入无效,请输入有效数字!`);
        continue;
    }

    // 先输出当前猜测的结果与大小提示
    if (userGuess === correctNumber) {
        console.log(`恭喜你,猜对了!你用了${guessCount}次机会。`);
        isGuessed = true;
    } else if (userGuess > correctNumber) {
        console.log(`第${guessCount}次猜测:${userGuess},猜大了!`);
    } else {
        console.log(`第${guessCount}次猜测:${userGuess},猜小了!`);
    }

    // 用完所有次数且未猜对时,输出最终提示
    if (guessCount === 5 && !isGuessed) {
        console.log(`你已用完5次猜测机会,正确答案是${correctNumber}`);
    }
}

// 现在这条日志一定会正常显示
console.log("游戏结束!");

关键修改点说明

  • 解决最后一条console.log()不显示的问题
    之前的代码大概率是把这条日志放在了循环内部或某个条件分支里,导致被跳过。现在把它移到循环外部,不管玩家是猜对获胜还是用完次数,都会执行这行代码。

  • 解决第5次错误时的提示缺失问题
    调整了提示输出的顺序:每次玩家提交猜测后,先输出当前的猜测内容和“猜大了/猜小了”的反馈,再判断是否用完了所有次数。这样第5次猜错时,会先展示最后一次的猜测详情,再提示用完机会和正确答案,完美匹配你的需求。

另外我额外加了输入验证逻辑,防止玩家输入非数字内容导致程序异常,这个是可选优化项,你可以根据需求保留或移除~

内容的提问来源于stack exchange,提问作者C Alexandru

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 09:36:53