Sobes.tech
Junior — Middle

Môžete vysvetliť koncept asynchrónneho programovania pomocou operácií Async a Await?

sobes.tech AI

Odpoveď od AI

Asynchrónne programovanie v Node.js umožňuje vykonávať operácie vstupu/výstupu (napríklad čítanie súborov, dopyty do databáz, sieťové požiadavky) bez blokovania hlavného vlákna vykonávania. Toho sa dosahuje pomocou kľúčových slov async a await.

  • async pred funkciou znamená, že funkcia vracia Promise a vo vnútri nej je možné používať await.
  • await pozastaví vykonávanie funkcie, kým Promise nie je vyriešená alebo zamietnutá, čo umožňuje písať asynchrónny kód v štýle synchronného.

Príklad:

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('Chyba:', error);
  }
}

getData();

V tomto príklade await spôsobí, že funkcia počká na odpoveď od fetch bez blokovania celého Node.js. Toto zjednodušuje prácu s asynchrónnym kódom a zlepšuje čitateľnosť v porovnaní s použitím reťazcov .then().