Я пытаюсь установить игру «Морской бой» в качестве веб-сайта для задания. В задании используется prompt().
Я попытался присвоить новое значение переменной предположения. Это тоже не сработало. Вот что у меня есть до сих пор:
let location1 = 3;
let location2 = 4;
let location3 = 5;
let guess;
let hits = 0;
let guesses = 0;
let isSunk = false;
while (isSunk == false) {
guess = prompt("Ready, aim, fire! (enter a number 0-6):");
if (guess < 0 || guess > 6) {
alert("Please enter a valid cell number!");
} else {
guesses = guesses + 1;
}
}
Игра должна обеспечивать обратную связь о том, был ли корабль поражен или нет, но все, что она делает, — это снова и снова выдает сообщение «Готово, цельтесь, стреляйте! (введите число 0–6):». При тестировании с консолью выдает ReferenceError: приглашение не определено.
@Quentin Квентин, я полагаю, они имеют в виду window.prompt, за исключением, конечно, того, что это доступно только в браузерах, а не в NodeJS.
Используйте «window.prompt» вместо приглашения
Ваш код ведет себя так, как должен.... причина, по которой приглашение появляется снова и снова, заключается в том, что isSunk всегда имеет значение false.
Используйте break, чтобы выйти из цикла после завершения манипуляции.
Спасибо за помощь, всем!
Я попробовал window.prompt(), и это ничего не изменило.
ниже есть еще код, который должен изменить значение isSunk, если корабль попал под удар.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Как вы думаете, почему
promptследует определить? Вы не определили его. Вы также не указали, что вы используете для выполнения вашего JS, поэтому мы не можем знать, следует ли ожидать, что ваша хост-среда предопределит это для вас.