Не работает цикл в Практика. Пишем приложение. Часть 2
Всем доброго времени суток.
Писал код который был дан в уроке, а именно часть
let money, time;
function start() {
money = +prompt ("Ваш бюджет на месяц?", "");
time = prompt ("Введите дату в формате YYYY-MM-DD", "");
while (isNaN(money) || money == "" || money == null) {
money = +prompt ("Ваш бюджет на месяц?", "");
}
}
start();
let appData = {
budget: money,
timeData: time,
expenses: {},
optionalExpenses: {},
income: [],
savings: true
};
function chooseExpenses() {
for (let i = 0; i < 2; i++) {
let a = prompt ("Введите обязательную статью расходов в этом месяце", ""),
b = prompt ("Во сколько обойдется?", "");
if ( typeof(a)==='string' && typeof(a) != null && typeof(b) != null && a != "" && b != "" && a.length < 50) {
appData.expenses[a] = b;
} else {
i--;
}
};
}
chooseExpenses();
Но это код не работает, когда в первом вопросе нажимаешь кнопку "Отмена" либо отправляешь пустую строку (что бы исключили в цыкле while), то вопрос должен быть задан повторно, но по факту просто проходит дальше и записывает в money. Это ошибка в уроке либо устаревшая информация?