Почему let var ведут себя по разному.
let money = prompt("Ваш бюджет на месяц?", '');
let time = prompt('Введите дату в формате YYYY-MM-DD', '');
let appData = {
budget: money,
expenses: {},
optionalExpenses: {},
income: [],
timeData: time,
savings: false,
};
for (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){
console.log('done');
appData.expenses[a] = b;
} else{
alert('nO');
}
};
appData.moneyPerDay = appData.budget / 30;
alert("Ежедневый бюджет: " + appData.moneyPerDay);
if(appData.moneyPerDay < 100) {
console.log('Минимальный уровень достатка');
}
alert(appData.expenses[a])
alert последний не выводится когда я присваиваю переменную через (let), а когда присваиваю все значения через var выводится. Почему это так?