enkomium
@enkomium

Почему скрипт не работает, что я делю не правильно?

Задача попросить посетителя ввести число в prompt до тех пор, пока посетитель на нажмет Cancel и каждый раз добавлять введенное значение к общей сумме.
Когда нажмет Cancel вывести общую сумму.

Что я делаю не так?

let total = 0;

let message;

for (let i = 0; i < 1; total += message) {
  message = prompt('Введите любое число!');
  message = Number(message);
  if (message === null) {
    message = alert(`Общая сумма чисел равна ${total}`);
  }
}
  • Вопрос задан
  • 322 просмотра
Решения вопроса 1
Потому-что, если вы ничего не ввели и преобразовываете к Number, то message вернёт 0, а не null и ваша проверка на null не сработает.
message = Number(message); // здесь ноль
И при выполнении условия из цикла нужно выходить.
let total = 0;

let message;

for (let i = 0; i < 1; total += message) {
  message = prompt('Введите любое число!');

  if (message !== null) {
  	message = Number(message);
  }

  if (message === null) {
    message = alert(`Общая сумма чисел равна ${total}`); 
    break;
  }
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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