Promise و async/await در جاوا اسکریپت

تِندایو محصول جدید وب سایت پلتفرم بوی است که به میلیون ها پرسش دسته های مختلف حوزه فناوری دیجیتال پاسخ داده است. اعلامیه حریم خصوصی تِندایو - همچنین در انتهای همین صفحه از میزان رضایت خود از پاسخ ربات هوش مصنوعی تندایو را اعلام بفرمایید.

برای شروع پرسش جدید از این لینک اقدام کنید.

💬 سوال: چگونه می‌توان از Promise و async/await برای اجرای عملیات ناهمزمان در جاوا اسکریپت استفاده کرد؟

استفاده از Promise و async/await برای عملیات ناهمزمان در جاوا اسکریپت

Promise:

  • Promise یک شیء در جاوا اسکریپت است که نشان‌دهنده نتیجه احتمالی یک عملیات ناهمزمان است.
  • Promise می‌تواند در دو حالت “حل شده” یا “رد شده” باشد.
  • برای کار با Promise از دو تابع then و catch استفاده می‌شود.
  • then برای دریافت نتیجه حل شده Promise و catch برای دریافت خطای رخ داده در Promise استفاده می‌شود.

مثال:

const promise = new Promise((resolve, reject) => {
  setTimeout(() => {
    resolve("عملیات با موفقیت انجام شد!");
  }, 2000);
});

promise.then(result => {
  console.log(result); // "عملیات با موفقیت انجام شد!"
}).catch(error => {
  console.log(error);
});

async/await:

  • async و await دو کلمه کلیدی در جاوا اسکریپت هستند که برای نوشتن کدهای ناهمزمان به صورت همزمان استفاده می‌شوند.
  • async قبل از نام یک تابع برای علامت‌گذاری آن به عنوان تابع ناهمزمان استفاده می‌شود.
  • await برای منتظر ماندن تا یک Promise حل شود استفاده می‌شود.

مثال:

async function getData() {
  const response = await fetch("https://api.example.com/data");
  const data = await response.json();
  return data;
}

getData().then(data => {
  console.log(data);
}).catch(error => {
  console.log(error);
});

مزایای استفاده از async/await:

  • کد را خواناتر و قابل فهم‌تر می‌کند.
  • نیاز به استفاده از توابع then و catch را از بین می‌برد.
  • به شما امکان می‌دهد کدهای ناهمزمان را به صورت همزمان بنویسید.

نکاتی برای استفاده از async/await:

  • همیشه از try/catch برای مدیریت خطاها در توابع async استفاده کنید.
  • از await فقط در داخل توابع async استفاده کنید.
  • از توابع async به صورت زنجیروار (chained) استفاده نکنید.

منابع:

جدیدترین سوالات برنامه نویسی

سوالات بیشتر برنامه نویسی

هرچه بیشتر بدانید بهتر است🔸⚡❔❕

tendaiwo

تِندایو، پرسش از دنیای آی تی

خیلی سوالات زیادی داریم که باید به همه آنها پاسخ داده شود.سوالاتی بسیاری در زمینه نرم افزار، سخت افزار،سایت، سئو، برنامه نویسی و ... که تِندایو جوابشان را میداند.

"تندایو" (Tendaiwo) که به معنی "حرکت به سوی پیشرفت" در زبان شونا، یکی از زبان‌های محلی زیمبابوه است، یکی از اسامی آفریقایی با معنی بسیار جالب است. این نام، نشان دهنده روحیه‌ی پیشرفت، بهبود و تلاش در زندگی است.با بیشتر دانستن، تلاش کنید و به خواسته هایتان برسید.

شما هم میتوانید سوالتان را بپرسید تا پس از پاسخ دهی توسط تندایو در دسته موردنظر ثبت شود.برای ورود به بخش اصلی میتوانید بر روی دکمه زیر کلیک کنید.

تِندایو، پرسش از دنیای آی تی

آیا این مطلب برای شما مفید بود؟

بله
نه اصلا
از اینکه بازخورد خود را در اختیار ما گذاشته اید متشکریم. تا بعد 🙂

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *