javascript - 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);
解决方案
你的台词
if (guess == location1 || guess == location2 || guess == location 3) {
和
alet("HIT!");
有错误,location3 变量名中有一个额外的空格,并且警报中缺少 r,它们应该是
if (guess == location1 || guess == location2 || guess == location3) {
和
alert("HIT!");
推荐阅读
- c - 在 C 中运行用户定义的函数时出现“与局部变量相关的堆栈内存地址”错误
- python - matplotlib:在每条迹线与右侧 y 轴相交的地方放置图例标签
- android - 原生 *.so 库及其标头在 android 项目中的位置?
- javascript - 按日期顺序对nodejs中的数组进行排序(从最近到最旧)
- linux - 使用 HUGETBL 映射文件的 Linux 内存
- c - 为什么在 C 中的这个 realloc 命令之后 valgrind 输出无效读取?
- database - 将数据从 Azure Blob 存储复制到 Azure SQLDB 时,Azure 数据工厂错误地复制单元格值
- c# - Unity:如何使两个具有固定关节的不同对象发生碰撞?
- javascript - VSCode:如何禁用最大化看起来像全屏的窗口框架?
- c - 通过 cgo 传递结构