Присваивание до await:
Присваивание после await:
В первом случае переменной присвоилось значение, а во втором нет. Почему так происходит?
Присваивание до await:
Присваивание после await:
В первом случае переменной присвоилось значение, а во втором нет. Почему так происходит?
Асинхронные функции запускаются и начинают исполняться синхронно, их асинхронность начинается с await. Поэтому в первом случае присваивание внутри функции успевает произойти до вывода в консоль вне функции, в отличие от второго случая.
Сравните:
async function foo() {
console.log(1);
await Promise.resolve();
console.log(3);
};
foo();
console.log(2);