⊗jsSpPrmSta 166 of 294 menu

JavaScript တွင် Promise ၏ အခြေအနေများ

Promise သည် အခြေအနေသုံးမျိုးအနက် တစ်ခုတွင် ရှိနိုင်သည်။ တည်ဆောက်စဥ်တွင် Promise သည် စောင့်ဆိုင်းနေသော (pending) အခြေအနေတွင်ရှိပြီး၊ ထို့နောက် ပြီးပြတ်သော (fulfilled) အခြေအနေသို့ ရောက်ရှိကာ ရရှိလာသောရလဒ်ကို ပြန်ပေးနိုင်သည်၊ သို့မဟုတ် ငြင်းပယ်ခံရသော (rejected) အခြေအနေသို့ ရောက်ရှိကာ ငြင်းပယ်ရသည့် အကြောင်းပြချက်ကို ပြန်ပေးနိုင်သည်။ အောက်ပါကုဒ်ကို လုပ်ဆောင်ခြင်းဖြင့် အခြေအနေတစ်ခုမှ အခြားတစ်ခုသို့ ကူးပြောင်းခြင်းကို သင်ကြည့်ရှုနိုင်သည်။

let promise = new Promise(function(resolve, reject) { setTimeout(function() { let isError = false; // true သို့မဟုတ် false ထားပါ if (!isError) { resolve([1, 2, 3, 4, 5]); } else { reject('promise တွင် error'); } }, 3000); }); setInterval(function() { console.log(promise); // စက္ကန့်တိုင်း Promise ကို console တွင် ထုတ်ပြပါ }, 1000);

fulfilled နှင့် rejected အခြေအနေများသည် ပြောင်းလဲ၍မရသော အခြေအနေများဖြစ်သည်ကို သတိပြုပါ။ Promise သည် ဤအခြေအနေများထဲက တစ်ခုသို့ ကူးပြောင်းသွားပါက၊ အခြားတစ်ခုသို့ ထပ်မံကူးပြောင်း၍ မရနိုင်တော့ပါ။ ဥပမာတစ်ခုဖြင့် ကြည့်ရှုကြည့်ပါမည်။ အောက်ပါကုဒ်တွင် reject ခေါ်ဆိုမှုသည် ပိုစောသောကြောင့်၊ resolve ခေါ်ဆိုမှုကို လျစ်လျူရှုထားမည်ဖြစ်သည်။

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

အချိန်အနည်းငယ်ကြာပြီးနောက် အောင်မြင်စွာ ပြီးဆုံးသွားမည့် Promise တစ်ခုကို ဖန်တီးပါ။ ၎င်းကို console တွင် ထုတ်ပြပြီး ၎င်း၏ ကနဦးအခြေအနေနှင့် ပြီးဆုံးသွားသော အခြေအနေကို လေ့လာပါ။

အချိန်အနည်းငယ်ကြာပြီးနောက် မအောင်မြင်ဘဲ ပြီးဆုံးသွားမည့် Promise တစ်ခုကို ဖန်တီးပါ။ ၎င်းကို console တွင် ထုတ်ပြပြီး ၎င်း၏ ကနဦးအခြေအနေနှင့် ပြီးဆုံးသွားသော အခြေအနေကို လေ့လာပါ။

မြန်မာ
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
ဝက်ဘ်ဆိုက် လုပ်ဆောင်ခြင်း၊ ဆန်းစစ်လေ့လာခြင်းနှင့် ပုဂ္ဂလိကပြုပြင်ခြင်းအတွက် ကျွန်ုပ်တို့သည် cookie များကို အသုံးပြုပါသည်။ ဒေတာများကို ပြုပြင်ခြင်းသည် ကိုယ်ရေးကိုယ်တာ မူဝါဒအတိုင်း ဖြစ်ပါသည်။
အားလုံးလက်ခံရန် ပြင်ဆင်ရန် ငြင်းပယ်ရန်