Поскольку функция asyn c неблокирующая, я ожидал, что asyncfun c в приведенном ниже коде не блокирует и console.log (a) печатает ноль.
var a = 0;
const asyncfunc = async () => {
for (let i = 0; i < 1000000000; i++) {}
a = 1;
return 2;
};
const asyncmain = async () => {
a = asyncfunc();
console.log(a);
return true;
};
asyncmain();
Но когда я выполнил, сначала запускается весь код в asyncfun c, а затем записывается консольный журнал. функция заблокирована при асинхронной c функция сначала!
ожидается: 0 актуально: Обещание {2}
Я не могу понять этот результат. Помоги мне понять этот результат!
ps Я запустил этот код на node.js v10.15.3