Исправьте сложение
важность: 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
В последнем варианте унарный и бинарный + используются вместе. Выглядит забавно, правда?