description

توضیح مفهوم async و await در جاوا اسکریپت

- 6 ماه پیش
توسط رضانیازی آپدیت شد
سعید محمدی ( 260 تجربه )
6 ماه پیش

سلام میخواستم در مورد async قبل از اسم توابع و
await قبل از بعضی دستورات و همچنین yeild قبل از برخی دستورات و همچنین علامت * ستاره قبل از نام متد ها بدونم ممنون میشم یکی از دوستان و یا خود آقای موسوی مفید و مختصر و کاربردی توضیح بدهند.

سپاس

رضانیازی ( 566 تجربه )
6 ماه پیش

سلام
شما زمانی که نیاز داری یه تابع اجرا کنی و خروجی اونو دریافت کنی بعد بقیه دستوارت اجرا بشه باید توی اسم تابع از async و درون تابع از await استفاده کنی، مثلا شما میخوای که از سرور یه سری اطلاعات بگیری که نیاز به توکن داری پس میای اول توکن با این روش تو لود صفحه بدست میاری و تا این تابع خروجی نده هیچ دستور دیگه ای کار نکنه و بعد اطلاعات بره سمت سرور و برگرده.
در مورد دو تا مبحث دیگه که نیاز داشتید من کار نکردم ولی با یه سرچ فکر کنم نیازتون بر طرف شه.
موفق باشید.

سعید محمدی ( 260 تجربه )
6 ماه پیش

کاشکی پاسخ تون با مثال بود و یه کم روشن تر من که متوجه نشدم

ولی ممنون

رضانیازی ( 566 تجربه )
6 ماه پیش

ببینید جناب محمدی فرض کنید من میخوام دوتا عدد جمع کنم بریزم توی متغیر x و بعد متغیر x بریزم توی یک تابع تا با متغیر y جمع بشه.
پس من الان 2 تا تابع دارم که تابع 1 جمع دو تا عدد و تولید مقدار x ، و تابع 2 حاصل جمع متغیر x و y.
سیستم es6 اینجوری که همه توابع رو میفرسته سمت پردازش و ممکن خروجی تابع 2 از 1 زودتر بیاد بیرون و بالعکس معنیش اینه که تمامی توابع در es6 بصورت sync هستن و نه async ،پس ما با استفاده از ایندستور به سیستم میگیم شما تا خروجی از تابع 1 نگرفتی هیچ کاری نکن و زمانی که خروجی اومد برو تابع 2 رو انجام بده.
ایشالا بیانم بهتر شده باشه و تونسته باشم کمک کنم، موفق باشید.

برای ارسال پاسخ باید وارد سایت شوید