Популярные вопросы начинающих!

BaNru

Пацифизжу
Команда форума
Регистрация
13.11.2010
Сообщения
3 961
Два аккаунта больного изолированы!
 
Регистрация
24.06.2020
Сообщения
21
Подскажите, пожалуйста, а почему этот код всегда выводит вариант default? Разве в нём есть ошибка? Спасибо за ответ?
JavaScript:
<!doctype html>

<html lang="ru" >

<head>

<meta charset="utf-8">

<title>вот так штука</title>
</head>

<body>
<script>
"use strict";

let a = prompt("Сколько будет 2+5?");

switch (a) {
  case 6:
    alert( 'Вы ошиблись. 2+5=7' );
    break;
  case 7:
    alert( 'Всё верно!' );
    break;
  case 8:
    alert( 'Вы ошиблись. 2+5=7' );
    break;
  default:
    alert( "Вы очень сильно ошиблись, будьте внимательнее. Возможно вы не умеете считать или вы робот. 2+5=7" );
}

</script>
</body>
 

Volly

Well-Known Member
Регистрация
21.03.2012
Сообщения
727
Может потому, что prompt возвращает строку, а для case заданы числа и ответ получается правильный: число не равно строке - значит ответ из default.
Или преобразуйте переменную "а" в число, или числа в case преобразуйте в строки.
 
Верх Низ