Каким образом можно использовать асинхронные функции в TypeScript?
@kieran.bradtke
В TypeScript асинхронные функции объявляются с помощью ключевого слова async, и возвращают обещание (Promise).
Пример:
1 2 3 4 5 6 7 8 9 |
async function fetchData(url: string): Promise { const response = await fetch(url); const data = await response.text(); return data; } fetchData('https://www.example.com') .then(data => console.log(data)) .catch(error => console.error(error)); |
Здесь fetchData - это асинхронная функция, которая получает на вход URL и возвращает обещание на строку. В теле функции мы используем ключевое слово await, чтобы дождаться завершения событий, которые происходят асинхронно (например, получение данных по сети).
Мы вызываем функцию fetchData и затем привязываем обработчики then и catch к возвращаемому обещанию (Promise), чтобы обработать успешное выполнение или ошибку соответственно.
В TypeScript также можно использовать async и await вместе с оператором try/catch, чтобы более красиво и читаемо обрабатывать ошибки:
1 2 3 4 5 6 |
try { const data = await fetchData('https://www.example.com'); console.log(data); } catch (error) { console.error(error); } |