بسته به عملیاتی که میخواهیم انجام دهیم و برای آن کدنویسی کنیم، اجرای آن کدها باید متفاوت باشد. گاهی نیاز داریم یک محاسبات ساده ریاضی انجام دهیم و نتیجه را فوراً در خروجی نمایش دهیم، گاهی میخواهیم در صورت وقوع یک رویداد مشخص مثل کلیک روی دکمه، یک تابع اجرا شود و گاهی میخواهیم یک عملیات زمان بر نظیر دانلود/آپلود فایل انجام دهیم یا با سرور خارجی ارتباط برقرار کنیم و منتظر پاسخ آن بمانیم. در موقعیت آخر که مثال آن مطرح شد، بخشی از کد دستوری را اجرا میکند که تعیین نتیجه آن زمان بر است و بخشی از کد که عملکردش وابسته به آن نتیجه است باید منتظر بماند. در این حین نیز نباید دیگر عملکردهای برنامه که از آن خط منطقی اجرا مستقل هستند، دچار وقفه شوند. اینجاست که مفهوم اجرای async و promise ها به میان می آید. البته promise همیشه برای عملیات async استفاده نمی شود بلکه کاری می کند تا اجرای بخشی از کد، وابسته به نتیجه اجرای بخشی دیگر شود.
در این قسمت با مفهوم promise و کاربرد و نحوه پیاده سازی آن آشنا می شویم.
در مورد دیگر ویژگی های اکما اسکریپت 6 بیشتر بخوانید: آموزش 10 ترفند کاربردی در جاوا اسکریپت نسخه ES6