Async توابع همیشه یک قول را برمیگردانند. اگر مقدار بازگشتی یک تابع async به طور صریح یک وعده نباشد، به طور ضمنی در یک وعده پیچیده می شود. توجه: حتی اگر مقدار بازگشتی یک تابع async طوری رفتار می کند که گویی در یک Promise.resolve پیچیده شده است، آنها معادل نیستند.
آیا firebase Promise را برمی گرداند؟
Firebase وعدههایی را منتشر میکند، بنابراین بیشتر اوقات مجبور نیستید خود را ایجاد کنید، فقط Promise API را که Firebase تولید میکند مصرف میکنید. یک بیت کد معمولی ممکن است شبیه این باشد. … هر تابع CheckoutService یک Promise برمی گرداند، بنابراین می توانم آنها را به زنجیر بکشم و از جهنم پاسخ به تماس اجتناب کنم.
چگونه async await مربوط به وعده ها است؟
Async/Await یک نحو جالبتر برای رسیدگی به وعدههای متعدد به صورت کد همزمان است. وقتی کلمه کلیدی async را قبل از اعلان تابع قرار میدهیم، یک وعده را برمیگرداند و میتوانیم از کلمه کلیدی await در داخل آن استفاده کنیم که کد را مسدود میکند تا زمانی که وعده حل شود یا رد شود.
آیا در انتظار بازگشت تابع Promise است؟
await را می توان در مقابل هر تابع مبتنی بر وعده غیر همگام قرار داد تا کد شما را در آن خط متوقف کند تا زمانی که وعده محقق شود، سپس مقدار حاصل را برگردانید. هنگام فراخوانی هر تابعی که Promise را برمی گرداند، می توانید از انتظاراستفاده کنید، از جمله توابع web API.
آیا عملکرد async یک وعده است؟
توابع ناهمگام یک قول را برمی گرداند. توابع async از یک Promise ضمنی برای برگرداندن نتیجه خود استفاده می کنند. حتی اگر برنگردیدProcess Explicitly async تابع اطمینان حاصل می کند که کد شما از طریق یک وعده ارسال می شود. … هنگام استفاده از انتظار غیر همگامسازی، مطمئن شوید که از try catch برای مدیریت خطا استفاده میکنید.