⊗jsSpPrmAr 170 of 294 menu

JavaScript හි ප්‍රතිඥා අරා සමඟ වැඩ කිරීම

දැන් අපි ප්‍රතිඥා අරා සමඟ වැඩ කිරීමට ඉඩ සලසන ප්‍රයෝජනවත් ක්‍රම දෙකක් විශ්ලේෂණය කරමු. Promise.all ක්‍රමය එයට අරාවක් ලෙස ලබා දුන් සියලුම ප්‍රතිඥා අවසන් වූ පසු කේතය ක්‍රියාත්මක කිරීමට ඉඩ සලසයි, Promise.race ක්‍රමය අරාවෙන් පළමු ප්‍රතිඥාව ලබා ගැනීමට බලා සිටී, ඉතිරිය ඉවත දමයි.

ක්‍රම දෙකම ඒවායේ ප්‍රතිපලයක් ලෙස නව ප්‍රතිඥාවක් ආපසු ලබා දෙයි. Promise.all ක්‍රමය සඳහා මෙම ප්‍රතිඥාවේ ප්‍රතිපලය වනුයේ සියලුම ලබා දුන් ප්‍රතිඥාවල ප්‍රතිඵල වල අරාවක් වනු ඇත (ප්‍රතිඵල වල අනුපිළිවෙල අරාවේ ප්‍රතිඥා වල අනුපිළිවෙලට අනුරූප වේ), Promise.race සඳහා - පළමුව ක්‍රියාත්මක වූ ප්‍රතිඥාවේ ප්‍රතිපලය වනු ඇත.

අපි ප්‍රායෝගිකව බලමු. අපට ප්‍රතිඥා අරාවක් ඇතැයි සිතමු:

let promises = [ new Promise(resolve => setTimeout(() => resolve(1), 1000)), new Promise(resolve => setTimeout(() => resolve(2), 2000)), new Promise(resolve => setTimeout(() => resolve(3), 3000)), ];

අපි Promise.all භාවිතයෙන් අපගේ අරාවෙන් සියලුම ප්‍රතිඥා ලබා ගැනීම අවසන් වීම බලා සිටිමු:

Promise.all(promises).then(function(res) { console.log(res); // [1, 2, 3] - සියලුම ප්‍රතිඥා වල ප්‍රතිඵල පෙන්වයි });

දැන් අපි Promise.race භාවිතයෙන් ප්‍රතිඥා වලින් පළමු එක ලබා ගැනීම අවසන් වීම බලා සිටිමු:

Promise.race(promises).then(function(res) { console.log(res); // 1 - පළමුව ක්‍රියාත්මක වූ ප්‍රතිඥාවේ ප්‍රතිපලය පෙන්වයි });

අරාවේ ඇති ප්‍රතිඥා වලින් එකක් හෝ ප්‍රතික්ෂේප කළහොත්, ප්‍රතිඵල සහිත ප්‍රතිඥාව වහාම rejected තත්වයට ගමන් කරයි. එබැවින් සිදු වූ ව්‍යතිරේකය සාමාන්‍ය, ඔබ දැනටමත් අධ්‍යයනය කර ඇති ක්‍රමයක් භාවිතයෙන් අල්ලා ගත හැකිය, උදාහරණයක් ලෙස, catch හරහා:

Promise.all(promises).then(function(res) { console.log(res); }).catch(function(err) { console.log(err); });

ප්‍රතිඥාවක් ආපසු ලබා දෙන ශ්‍රිතයක් සාදන්න, එහි ඇතුළත 1 සිට 10 තත්පර දක්වා අහඹු ප්‍රමාදයක් සකසා ඇත. ප්‍රතිඥාව තම ප්‍රතිපලය ලෙස මෙම ප්‍රමාදය ආපසු ලබා දෙයි. ලූපය සහ ඔබගේ ශ්‍රිතය භාවිතයෙන් අරාව 10 ප්‍රතිඥා වලින් පුරවන්න.

පෙර කාර්යයෙන් ප්‍රතිඥා අරාව භාවිතයෙන් පළමුව ක්‍රියාත්මක වූ ප්‍රතිඥාවේ ප්‍රතිපලය කන්සෝලයේ පෙන්වීමට සලස්වන්න.

පෙර කාර්යයෙන් ප්‍රතිඥා අරාව භාවිතයෙන් සියලුම ප්‍රතිඥා වල ප්‍රතිඵල වල එකතුව කන්සෝලයේ පෙන්වීමට සලස්වන්න.

සිංහල
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
අපි වෙබ් අඩවිය ක්‍රියාත්මක කිරීම, විශ්ලේෂණය සහ පුද්ගලීකරණය සඳහා කුකී භාවිතා කරමු. දත්ත සැකසීම සිදුකරනු ලබන්නේ ගෝපනීයතා ප්‍රතිපත්තිය අනුව ය.
සියල්ල පිළිගන්න කොන්දේසි ප්‍රතික්ෂේප කරන්න