Назад к вопросам
Junior — Middle
83
Можете объяснить концепцию асинхронного программирования с использованием операций Async и Await?
Ответ от нейросети
sobes.tech AI
Асинхронное программирование в Node.js позволяет выполнять операции ввода-вывода (например, чтение файлов, запросы к базе данных, сетевые запросы) без блокировки основного потока выполнения. Это достигается с помощью ключевых слов async и await.
asyncперед функцией означает, что функция возвращает Promise и внутри неё можно использоватьawait.awaitприостанавливает выполнение функции до тех пор, пока Promise не выполнится (разрешится или отклонится), позволяя писать асинхронный код в синхронном стиле.
Пример:
const fetch = require('node-fetch');
async function getData() {
try {
const response = await fetch('https://api.example.com/data');
const data = await response.json();
console.log(data);
} catch (error) {
console.error('Ошибка:', error);
}
}
getData();
В этом примере await заставляет функцию дождаться ответа от fetch, не блокируя при этом весь поток Node.js. Это упрощает работу с асинхронным кодом и улучшает читаемость по сравнению с использованием цепочек .then().