⊗jsSpPrmSta 166 of 294 menu

Stavy promisu v JavaScripte

Promis môže byť v jednom z troch stavov. Pri vytvorení je promis v stave čakania (pending), potom sa môže stať splneným (fulfilled), čím vráti získaný výsledok, alebo zamietnutým (rejected), čím vráti dôvod zlyhania. Prechod z jedného stavu do druhého môžete vidieť spustením nasledujúceho kódu:

let promise = new Promise(function(resolve, reject) { setTimeout(function() { let isError = false; // nastavte buď true, alebo false if (!isError) { resolve([1, 2, 3, 4, 5]); } else { reject('error in promise'); } }, 3000); }); setInterval(function() { console.log(promise); // každú sekundu vypíšeme promis do konzoly }, 1000);

Majte na pamäti, že stavy fulfilled a rejected sú nemenné: ak promis prešiel do jedného z týchto stavov, už nemôže prejsť do druhého. Pozrime sa na príklad. V nasledujúcom kóde sa volanie reject stane skôr, preto volanie resolve bude ignorované:

let promise = new Promise(function(resolve, reject) { setTimeout(() => reject(new Error('error')), 1000); setTimeout(() => resolve('ignored'), 2000); });

Vytvorte promis, ktorý sa úspešne vykoná o nejaký čas. Vypíšte ho do konzoly a preštudujte si jeho počiatočný stav a dokončený stav.

Vytvorte promis, ktorý zlyhá o nejaký čas. Vypíšte ho do konzoly a preštudujte si jeho počiatočný stav a dokončený stav.

Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť