首页 > 解决方案 > Javascript战舰游戏 - 提示无响应

问题描述

我正在尝试跟随我的 javascript 书籍“headfirst javascript programming”....

任务是制作一个简化的战舰游戏。在我添加更多代码之前它一直在工作......现在提示没有显示。我确定我用大括号做错了。我只想在启动浏览器时出现提示“准备好,瞄准,开火!(输入 0-6 之间的数字):”并让它响应数字输入。

谁能快速告诉我为什么我搞砸了?谢谢你!这是我的简单代码--->>>

//declare variables
var location1 = 3;
var location2 = 4;
var location3 = 5;
var guess;
var hits = 0;
var guesses = 0;
var isSunk = false;

//loop
while (isSunk == false) {

//get
    guess = prompt("Ready, aim, fire! (enter a number from 0-6):");
    if (guess < 0 || guess > 6) {
        alert("Please enter a valid cell number!");
    } else {
//add
      guesses = guesses + 1;
//if
        if (guess == location1 || guess == location2 || guess == location 3) {
            alet("HIT!");
            hits = hits + 1;
            if (hits == 3) {
                isSunk = true;
                alert("You sank my battleship!");
            }
        } else {
            alert("MISS");
        }
    }
}

var stats = "You took " + guesses + "guesses to sink the battleship, " +
                "which means your shooting accuracry was " + (3/guesses);
alert(stats);

标签: javascript

解决方案


你的台词

if (guess == location1 || guess == location2 || guess == location 3) {

alet("HIT!");

有错误,location3 变量名中有一个额外的空格,并且警报中缺少 r,它们应该是

if (guess == location1 || guess == location2 || guess == location3) {

alert("HIT!");

推荐阅读