Исправьте сложение
важность: 5
Ниже приведён код, который запрашивает у пользователя два числа и показывает их сумму.
Он работает неправильно. Код в примере выводит 12
(для значения полей по умолчанию).
В чём ошибка? Исправьте её. Результат должен быть 3
.
let a = prompt("Первое число?", 1);
let b = prompt("Второе число?", 2);
alert(a + b); // 12
Причина в том, что окно запроса возвращает пользовательский ввод как строку.
Поэтому переменные получают значения "1"
и "2"
соответственно.
let a = "1"; // prompt("Первое число?", 1);
let b = "2"; // prompt("Второе число?", 2);
alert(a + b); // 12
Нам нужно привести строки к числам перед применением оператора +
. Например, с помощью Number()
или вставки +
перед ними.
Вставить +
можно прямо перед prompt
:
let a = +prompt("Первое число?", 1);
let b = +prompt("Второе число?", 2);
alert(a + b); // 3
Или внутри alert
:
let a = prompt("Первое число?", 1);
let b = prompt("Второе число?", 2);
alert(+a + +b); // 3
В последнем варианте унарный и бинарный +
используются вместе. Выглядит забавно, правда?