কম্পিউটার

জাভাস্ক্রিপ্টে অ্যাসিঙ্ক/অ্যাওয়েট ফাংশন


প্রতিশ্রুতি বস্তুটি একটি অ্যাসিঙ্ক্রোনাস অপারেশনের চূড়ান্ত সমাপ্তি (বা ব্যর্থতা) এবং এর ফলস্বরূপ মানকে প্রতিনিধিত্ব করে। Async ওয়েট ফাংশন এবং অপারেটররা প্রতিশ্রুতিতে কাজ করে।

অ্যাসিঙ্ক/অপেক্ষা ফাংশনগুলি পর্দার পিছনে অ্যাসিঙ্ক কাজগুলি সম্পাদন করার সময় সম্পূর্ণরূপে সিঙ্ক্রোনাস-সুদর্শন কোড লিখতে সাহায্য করে৷

উদাহরণস্বরূপ, আসুন আমরা বলি আমাদের একটি অ্যাসিঙ্ক্রোনাস ফাংশন রয়েছে যা একটি প্রতিশ্রুতি প্রদান করে −

// Promise that resolves to 100 after 2sec
function getHundred() {
   return new Promise(resolve => {
      setTimeout(() => {
         resolve(100);
      },    2000);
   });
}

আমরা এটি একটি ফাংশনে ব্যবহার করতে চাই, তবে আমাদের রিটার্ন মানটির জন্য অপেক্ষা করতে হবে। কলব্যাক ব্যবহার করে আমরা নিম্নলিখিত উপায়ে এটি করতে পারি -

function useGetHundred() {
   getHundred().then((value) => {
      console.log(value);
   })
}

কিন্তু আমাদের অপ্রয়োজনীয়ভাবে ফিরে আসা ডেটা চালানোর জন্য একটি কলব্যাক তৈরি করতে হবে। আমরা পরিবর্তে এই কোডটি সহজ করার জন্য async await ব্যবহার করতে পারি −

উদাহরণ

// Declare an async function. When this function is called, it'll also return a Promise
// But inside this function any async calls can be made synchronous using await keyword
async function useGetHundredAsync() {
   // wait for the getHundred promise to resolve then store its value in value.
   let value = await getHundred();
   console.log(value)
}

আউটপুট

100

  1. জাভাস্ক্রিপ্টে উচ্চতর অর্ডার ফাংশন:একটি গাইড

  2. জাভাস্ক্রিপ্ট কলব্যাক

  3. জাভাস্ক্রিপ্টে সংক্ষিপ্ত তীর ফাংশন

  4. জাভাস্ক্রিপ্টে প্রথম শ্রেণীর ফাংশন