• 1399/05/28

ترکیب promise و async :

با سلام و آروزی سلامتی

راستش من در خصوص تفاوت این دو تابع و فراخوانی کمی گیج شدم میشه اگر امکان داره توضیح بدید
تست هم کردم نتیجه در هرصورت یکسان هستش

 کد اول

async function CleanUp() {
  const c = await caches.keys();
  return Promise.all(
    c.map(key => {
      if (key != cacheName) {
        caches.delete(key);
        console.log('clean', key);
      }
    })
  )
}

کد دوم

async function CleanUp() {
  const c = await caches.keys();
    c.map(key => {
      if (key != cacheName) {
        caches.delete(key);
        console.log('clean', key);
      }
    })
}

فراخوانی تابع 

e.waitUntil(CleanUp());

CleanUp();

 

  • 1399/05/29
  • ساعت 13:15

سلام دوست من

تفاوت در استفاده از Promise.all هست که ایشون به عنوان ورودی Promise های قابل تکرار یعنی چندین Promise قبول میکنه و در صورتی که تمامی Promiseهای داده شده Resolve شدن یک Promise برگشت میده که میگه اوکی همه Promiseها اجرا شدن و ادامه کار

موفق باشید


logo-enamadlogo-samandehi