Sobes.tech
Middle

Je možné spracovať stav rejected promise vnútri then? Aký je rozdiel medzi spracovaním reject v druhom callbacku then a v catch?

sobes.tech AI

Odpoveď od AI

Áno, vo vnútri then môžete spracovať zamietnutý stav odovzdaním druhého callbacku do then:

promise.then(
  result => { /* spracovanie úspešného výsledku */ },
  error => { /* spracovanie chyby */ }
);

Rozdiel medzi spracovaním reject v druhom callbacku then a v catch:

  • Druhý callback then spracováva iba chyby, ktoré vznikli v pôvodnom promise.
  • catch zachytáva chyby, ktoré vznikli ako v pôvodnom promise, tak v akomkoľvek predchádzajúcom then, ak neboli spracované.

Preto je catch vhodnejší pre centralizované spracovanie chýb, zatiaľ čo druhý callback then je určený na lokálne spracovanie chýb konkrétneho promise.