Sobes.tech
Junior

Ako môžete spracovať chybu (reject) sľubu v asynchrónnej funkcii?

sobes.tech AI

Odpoveď od AI

Môžete použiť try...catch.

async function processData() {
  try {
    const result = await fetchData(); // fetchData() môže vrátiť sľub, ktorý bude odmietnuty
    console.log('Údaje úspešne získané:', result);
  } catch (error) {
    console.error('Chyba pri získavaní údajov:', error);
    // Tu môžete vykonať ďalšie kroky na spracovanie chyby
    // Napríklad zobraziť správu používateľovi alebo zaznamenať log
  }
}

// Alternatívny spôsob s .catch() (menej rozšírený v async/await)
async function processDataAlt() {
  await fetchData()
    .then(result => {
      console.log('Údaje úspešne získané:', result);
    })
    .catch(error => {
      console.error('Chyba pri získavaní údajov:', error);
    });
}

Použitie try...catch je preferované a idiomatické pre async/await. Umožňuje centralizované spracovanie chýb v jednom bloku a vyzerá to viac synchronne.