Помогите разобраться.
Через await нельзя просто обратиться к вызову функции?
Только через функция, которая будет создана через промис?
В статье было написано, что await это заменитель промиса и я решил попробовать его использовать с обычной функцией.
function say() {
console.log('say hello');
return 'say';
}
async function start() {
console.log('Start');
await setTimeout(say, 3000);
console.log('End');
}
start();
async-await - это синтаксический сахар над генераторами и промисами, как yield можно использовать только в генераторе, так и await можно использовать только в функциях, объявленных с async.
А сам await можно использовать с чем угодно, не только с функциями, которые возвращают промис, вот этот код тоже абсолютно корректен и работает как ожидается: