Middle
// Konsolda nə çıxacaq ? const p1 = Promise.resolve(1); const p2 = new Promise((_, reject) => setTimeout(() => reject("Error"), 100)); const p3 = Promise.resolve(3); Promise.all([p1, p2, p3]) .then(console.log) .catch(console.error); Promise.allSettled([p1, p2, p3]).then(console.log);
sobes.tech Süni İntellekt
AI-dan cavab
Konsolda aşağıdakı kimi göstəriləcək:
Promise.all([p1, p2, p3])çağırışı xəta ilə nəticələnəcək, çünkip2100 ms sonra "Error" mesajı ilə rədd edilir. Buna görə.catch(console.error)blokunda aşağıdakı göstəriləcək:
Error
Promise.allSettled([p1, p2, p3])çağırışı hər zaman uğurla tamamlanır və bütün vədlərin nəticələrini ehtiva edən bir massiv qaytarır, onların vəziyyətindən asılı olmayaraq. Konsolda aşağıdakı obyektlər massiv kimi göstəriləcək:
[
{ status: "fulfilled", value: 1 },
{ status: "rejected", reason: "Error" },
{ status: "fulfilled", value: 3 }
]
Beləliklə, əvvəlcə Promise.all-ın xətası konsola çıxacaq, sonra isə Promise.allSettled-in nəticələri array şəklində göstəriləcək.