GuessTheNumberJS
GuessTheNumberJS
Описание:
-
Это интерактивное веб-приложение, в котором компьютер загадывает число, а пользователь пытается его угадать.
-
Базовая механика:
- В начале игры компьютер загадывает случайное число в пределах от 1 до 100.
- Пользователь должен вводить свое предположение в текстовое поле.
- После каждой попытки компьютер сообщает, было ли загаданное число больше или меньше предложенного.
-
Система подсказок:
- Каждые три неудачные попытки пользователь получает подсказку о том, является ли число четным или нечетным.
- Если пользователь введет число за пределами диапазона (например, меньше 1 или больше 100), выводится предупреждение.
- Каждые три неудачные попытки пользователь получает подсказку о том, является ли число четным или нечетным.
-
Возможность выбирать диапазон чисел (например, от 1 до 1000).
-
Счетчик попыток, показывающий, сколько попыток потребовалось пользователю для угадывания.
-
Возможность начать игру заново без перезагрузки страницы.
Как использовать
- Введите ваш вариант числа в текстовое поле и отправьте форму.
- Следите за подсказками компьютера и попробуйте угадать число.
Реализация:
-
Константы:
- В файле
определены идентификаторы для управления интерфейсом.domIds.js - В файле
предоставлены сообщения, используемые при взаимодействии с пользователем.messages.js
- В файле
-
Утилиты (
):utils.js
: Генерация случайного числа в заданном диапазоне.getRandomNumber(from, to)
: Проверка, является ли значение числом.isNumber(number)
: Обновление текстового содержимого элемента.updateElementText(elementId, message)
: Очистка поля ввода с указанным идентификатором.clearInput(inputId)
: Добавление новой попытки в блок с историей.saveAttempt(number)
: Очистка блока с историей.clearAttempts()
: Обновление отображаемого количества попыток.updateAttemptsCount(attemptsCount)
: Отображение подсказки.showHint(text)
: Скрытие подсказки.hideHint()
: Отключение ввода пользователя.disableInput()
: Включение ввода пользователя.enableInput()
-
:gameModel
: Флаг, указывающий, выиграна ли игра.isWin
: Количество попыток.attempts
,minNumber
: Минимальное и максимальное число в диапазоне.maxNumber
: Загаданное число.targetNumber
: Сообщение о том, что введенное число вне допустимого диапазона.OUT_OF_BOUNDARIES_MESSAGE
: Метод проверки угадывания числа.checkGuess(number)
: Метод проверки, является ли загаданное число четным.isTargetNumberEven()
-
: Объект с методами для обновления интерфейса.gameView -
: Объект с методами для управления игрой.gameController -
:index.js- Обработчики событий для кнопок и полей ввода.
- Инициализация элементов интерфейса.
Используемые библиотеки и технологии:
- HTML5, CSS3, JavaScript:
- Основные технологии для разработки веб-приложения.
- Минификация кода
Описание
Это интерактивное веб-приложение на JS, в котором компьютер загадывает число, а пользователь пытается его угадать.
Языки
JavaScript
- HTML
- CSS