Цель async/await
- избежать цепочки обещаний.Вы должны обернуть код ожидания в блок try/catch
, если есть вероятность ошибок, и он всегда будет возвращать Promise
, поэтому при вызове функции async
также следует использовать ключевое слово await
.
async function counterChanger(database) {
try {
// returning length of returned rows
return (await database.all("SELECT * FROM pets")).length;
} catch(e) {
// just in case if an error thrown for whatever reason, can be handled / logged here
}
// would return `0` if there was an error
return 0;
}
async function updateCounterValue() {
counterValue = await counterChanger();
}