PROGLIB_ACADEMY Telegram 3089
🙂 Как на самом деле работает async и await

Многие используют эти конструкции, совершенно не понимая, что там под капотом. Давайте разберёмся, как работают эти конструкции и почему именно они делает твой код чище и понятнее.

Что такое async и await

async: ключевое слово перед функцией делает её асинхронной. Это означает, что она всегда возвращает промис, даже если вы явно не указали это.

Например:

async function fetchData() {
return "Данные получены";
}

fetchData().then(console.log); // Выведет: "Данные получены"


await: используется внутри асинхронной функции. Заставляет код «подождать» завершения промиса, после чего возвращает его результат.

async function fetchData() {
let promise = new Promise((resolve) => {
setTimeout(() => resolve("Данные получены"), 2000);
});

let result = await promise;
console.log(result); // Выведет: "Данные получены" через 2 секунды
}

fetchData();


Что используется для обработки ошибок

Стандартный блок try...catch:

async function fetchData() {
try {
let response = await fetch('https://api.example.com/data');
let data = await response.json();
console.log(data);
} catch (error) {лол
console.error('Ошибка:', error);
}
}

fetchData();


Преимущества использования async/await

Упрощение кода: асинхронный код становится более читаемым и похожим на синхронный, что облегчает его понимание и поддержку.

Избегание «адской пирамиды колбэков»: async/await помогает избежать глубокой вложенности, характерной для колбэков.

Этот подход упрощает работу с промисами и делает код более линейным и читаемым.

🐸Proglib Academy

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM



tgoop.com/proglib_academy/3089
Create:
Last Update:

🙂 Как на самом деле работает async и await

Многие используют эти конструкции, совершенно не понимая, что там под капотом. Давайте разберёмся, как работают эти конструкции и почему именно они делает твой код чище и понятнее.

Что такое async и await

async: ключевое слово перед функцией делает её асинхронной. Это означает, что она всегда возвращает промис, даже если вы явно не указали это.

Например:

async function fetchData() {
return "Данные получены";
}

fetchData().then(console.log); // Выведет: "Данные получены"


await: используется внутри асинхронной функции. Заставляет код «подождать» завершения промиса, после чего возвращает его результат.

async function fetchData() {
let promise = new Promise((resolve) => {
setTimeout(() => resolve("Данные получены"), 2000);
});

let result = await promise;
console.log(result); // Выведет: "Данные получены" через 2 секунды
}

fetchData();


Что используется для обработки ошибок

Стандартный блок try...catch:

async function fetchData() {
try {
let response = await fetch('https://api.example.com/data');
let data = await response.json();
console.log(data);
} catch (error) {лол
console.error('Ошибка:', error);
}
}

fetchData();


Преимущества использования async/await

Упрощение кода: асинхронный код становится более читаемым и похожим на синхронный, что облегчает его понимание и поддержку.

Избегание «адской пирамиды колбэков»: async/await помогает избежать глубокой вложенности, характерной для колбэков.

Этот подход упрощает работу с промисами и делает код более линейным и читаемым.

🐸Proglib Academy

#буст

BY Proglib.academy | IT-курсы




Share with your friend now:
tgoop.com/proglib_academy/3089

View MORE
Open in Telegram


Telegram News

Date: |

How to create a business channel on Telegram? (Tutorial) Over 33,000 people sent out over 1,000 doxxing messages in the group. Although the administrators tried to delete all of the messages, the posting speed was far too much for them to keep up. Hashtags Commenting about the court's concerns about the spread of false information related to the elections, Minister Fachin noted Brazil is "facing circumstances that could put Brazil's democracy at risk." During the meeting, the information technology secretary at the TSE, Julio Valente, put forward a list of requests the court believes will disinformation. Activate up to 20 bots
from us


Telegram Proglib.academy | IT-курсы
FROM American