Sobes.tech
Junior — Middle

Come si può tracciare e gestire un errore che si verifica durante l'uso di una promessa in stato rifiutato?

sobes.tech AI

Risposta dell'AI

Per tracciare e gestire un errore durante l'uso di una promessa in stato rejected, puoi usare il metodo .catch() o il secondo argomento del metodo .then().

Esempio con .catch():

fetch('https://api.example.com/data')
  .then(response => {
    if (!response.ok) {
      return Promise.reject('Errore di rete');
    }
    return response.json();
  })
  .then(data => {
    console.log('Dati:', data);
  })
  .catch(error => {
    console.error('Si è verificato un errore:', error);
  });

Puoi anche usare try...catch all'interno di una funzione asincrona con await:

async function getData() {
  try {
    const response = await fetch('https://api.example.com/data');
    if (!response.ok) {
      throw new Error('Errore di rete');
    }
    const data = await response.json();
    console.log('Dati:', data);
  } catch (error) {
    console.error('Si è verificato un errore:', error);
  }
}
getData();

In questo modo, la gestione degli errori in stato rejected permette di reagire correttamente ai fallimenti e prevenire che l'applicazione si blocchi.