Должен ли работать следующий код?
if(true) {
async function bar() {
console.log("hello");
}
}
bar();
Chrome 80 и Firefox 72, оба выдают ReferenceError
, говоря, что bar
не определено. Таким образом, кажется, что async function bar() {...}
объявления являются областью действия блока, тогда как function bar() {...}
объявления являются областью действия функции? Смущает, если это так, но может ли кто-нибудь просто подтвердить это со мной ссылкой на соответствующую часть спецификации c?
Кроме того, есть ли способ сделать объявление функции async function
в области видимости? когда объявлено изнутри блока?