@SerGeGR

Замыкания/ область видимости — как перезапустить кол-во попыток и перезагадать число?

Добрый день, я новичок в JS, уже достаточно долго сижу в луже с проблемой в решении задачи.
Задача такая - написать программу с использованием замыкания, которая загадывает число от 0 до 1000, спрашивает пользователя угадать и дает ему на это 10 попыток. Если все попытки потрачены - перезапускает игру (перезагадывает число и обновляет счетчик). При это задание должно быть реализовано по определенной схеме:
window.lib = (function(){
   //Генерация числа
    function getRandomNumber(){
      return Math.floor(Math.random() * (max - min + 1)) + min;
    }
    var min = 1;
    var max = 1000;
    var i = getRandomNumber(min, max);
    console.log(i);

    //Запрос числа у пользователя
    function start(){
      var getNumber = prompt('Введите число!');
        if (getNumber === null){
          alert ('Игра окончена!');
          return;
        }
        var number = parseInt(getNumber);
        if (number < i){
          alert('Число меньше загаданного');
          return checkCount();
        }
        else if(number > i){
          alert('Число больше загаданного!');
          return checkCount();
        }
        else if (number == '' || isNaN(number)){
          alert ('Вы ввели не число!');
          return checkCount();
        }
        else {
          alert ('Вы угадали!');
        }
    }

   //Кол-во попыток
    var lives = 10;

    function checkCount(){
      lives--;
      if (lives <= 8){
        return confirmNewGame();
      }
      else{
        return start();
      }
    }

    //Перезапуск игры
    function confirmNewGame(){
      alert('Игра окончена');
    }

    return{
      start
    }
}());


Все выглядит как надо, только вот не знаю как обнулить счетчик и перезагадать число через функцию - confirmNewGame() (по заданию именно так надо). Буду признателен за подсказку.
  • Вопрос задан
  • 103 просмотра
Пригласить эксперта
Ответы на вопрос 1
@andreysuha
Что то знаю
lives = 10
start ()
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы