@pavel_arz

Как исправить ошибку Uncaught TypeError: Cannot read property 'toLowerCase' of null at script.js:formatted:17?

В коде есть переменная guess. К ней приписан метод .toLowerCase(). Из-за него при выполнении кода:
...var guess = prompt('Угадайте букву, или нажмите кнопку "Отмена" для выхода из игры');
guess = guess.toLowerCase();

if(guess === null)
{
break;
}...

выдается ошибка Uncaught TypeError: Cannot read property 'toLowerCase' of null at script.js:formatted:17. Как ее исправить. Вот полный код:

var words = ['кошка','собака','дельфин','космос','слово','ложка','школа'];

var word = words[Math.floor(Math.random() * words.length)];

var answerArray = [];
for(var i = 0; i < word.length; i++){
answerArray[i] = '_';
}
var course = 5;

var remainingLetters = word.length;;

while (remainingLetters > 0 && course !== 0){
alert(answerArray.join(' '));

var guess = prompt('Угадайте букву, или нажмите кнопку "Отмена" для выхода из игры');
guess = guess.toLowerCase();

if(guess === null)
{
break;
}
else if(guess.length !== 1)
{
alert('Введите одиночную букву!');
}
else
{
for(var j = 0; j < word.length; j++){
if(word[j] === guess){
answerArray[j] = guess;
remainingLetters--;}
else{
course = course - 1;
}
}
}
}
alert(answerArray.join(" "));
alert("Отлично! Было загадано слово " + word);
  • Вопрос задан
  • 3089 просмотров
Пригласить эксперта
Ответы на вопрос 1
SagePtr
@SagePtr
Еда - это святое
Сначала проверять на null, а только потом выполнять guess = guess.toLowerCase();
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы