⊗jsSpPrmChn 167 of 294 menu

Պրոմիսների շղթաները JavaScript-ում

Ենթադրենք ունենք հետևյալ պրոմիսը՝

let promise = new Promise(function(resolve, reject) { setTimeout(function() { resolve('string'); }, 3000); });

Պրոմիսի ավարտին դրա արդյունքը ցույց կտանք կոնսոլում՝

promise.then( function(result) { console.log(result); // կցուցադրի 'string' } )

Այժմ եկեք անմիջապես չցուցադրենք արդյունքը, այլ ինչ-որ կերպ փոխենք այն և վերադարձնենք return-ի միջոցով՝

promise.then( function(result) { return result + '!'; } );

Այս դեպքում մենք կարող ենք մեր then-ի արդյունքին կիրառել ևս մեկ then՝ դրանով իսկ ստեղծելով շղթա մեթոդների: Ընդ որում, հաջորդ մեթոդի արդյունքին կհասնի այն, ինչ վերադարձվել է նախորդի կողմից return-ի միջոցով՝

promise.then( function(result) { return result + '!'; } ).then( function(result) { console.log(result); // կցուցադրի 'string!' } );

Այսպիսով կարելի է կառուցել ցանկացած երկարության շղթա՝

promise.then( function(result) { return result + '1'; } ).then( function(result) { return result + '2'; } ).then( function(result) { return result + '3'; } ).then( function(result) { console.log(result); // կցուցադրի 'string123' } );
Հայերեն
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Մենք օգտագործում ենք cookie-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել