কম্পিউটার টিউটোরিয়াল

জাভাস্ক্রিপ্টে Async/Await ফাংশন


Promise অবজেক্ট একটি অ্যাসিনক্রোনাস অপারেশনের نهایی সমাপ্তি (বা ব্যর্থতা) এবং এর ফলাফল মান উপস্থাপন করে। Async await ফাংশন এবং অপারেটর প্রমিসের ওপর কাজ করে।

Async/await ফাংশন আমাদের সম্পূর্ণ সিনক্রোনাস-দেখানো কোড লিখতে সাহায্য করে যখন পিচনে অ্যাসিনক্রোনাস টাস্ক চলছে।

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

// ২ সেকেন্ড পর ১০০ রিটার্ন করে এমন প্রমিস function getHundred() { return new Promise(resolve => { setTimeout(() => { resolve(100); }, 2000); }); }

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

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

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

উদাহরণ

// একটি অ্যাসিনক্রোনাস ফাংশন ডিক্লেয়ার করুন। যখন এই ফাংশন কল হবে, এটি একটি প্রমিস রিটার্ন করবে // কিন্তু এই ফাংশনের ভিতরে যেকোনো অ্যাসিনক্রোনাস কল await কীওয়ার্ড দিয়ে সিনক্রোনাস করা যায় async function useGetHundredAsync() { // getHundred প্রমিস রিজলভ হওয়ার জন্য অপেক্ষা করুন তারপর এর ভ্যালু value-এ স্টোর করুন let value = await getHundred(); console.log(value) }

আউটপুট

100

  1. JavaScript-এ হায়ার অর্ডার ফাংশন: একটি গাইড

  2. জাভাস্ক্রিপ্ট কলব্যাক ফাংশন

  3. জাভাস্ক্রিপ্টে Concise Arrow Functions

  4. জাভাস্ক্রিপ্টে ফার্স্ট-ক্লাস ফাংশন