Rumah >hujung hadapan web >tutorial js >Bagaimanakah kaedah Promise.all() berbeza daripada kaedah Promise.allSettled() dalam JavaScript?

Bagaimanakah kaedah Promise.all() berbeza daripada kaedah Promise.allSettled() dalam JavaScript?

WBOY
WBOYke hadapan
2023-08-25 11:45:05859semak imbas

JavaScript 中的 Promise.all() 方法与 Promise.allSettled() 方法有何不同?

Dalam artikel ini, anda akan mempelajari bagaimana kaedah Promise.all() berbeza daripada kaedah Promise.allSettled() dalam JavaScript.

Kaedah Promise.all() menerima satu atau lebih Promise sebagai input dan mengembalikan Promise. Apabila semua janji input telah dipenuhi, janji yang dikembalikan akan dipenuhi. Apabila mana-mana janji input ditolak, ia menolak janji dan memberikan alasan penolakan pertama.

Kaedah Promise.allSettled() menerima satu atau lebih Promise sebagai input dan mengembalikan Promise. Janji yang dikembalikan dipenuhi apabila semua janji input telah diselesaikan (termasuk apabila menghantar objek boleh lelar kosong), dengan pelbagai objek yang menerangkan hasil setiap janji.

Contoh 1

Dalam contoh ini, mari lihat cara kaedah Promise.all berfungsi.

console.log("Defining three promise values: promise1, promise2 and promise3");
const promise1 = Promise.resolve(1);
const promise2 = new Promise((resolve, reject) => {
   setTimeout(resolve, 2 , 'Promise Two');
});
const promise3 = 3;

console.log("Running Promise.all method on all the three promise values")

Promise.all([promise1, promise2, promise3]).then((values) => console.log(values));

Arahan

  • Langkah 1 - Tentukan tiga nilai Janji, Janji1, Janji2, Janji3 dan tambah nilai padanya.

  • Langkah 2 - Jalankan kaedah Promise.all() pada semua nilai Promise.

  • Langkah 3 - Paparkan nilai janji sebagai hasilnya.

Contoh 2

Dalam contoh ini, mari lihat cara kaedah Promise.allSettled berfungsi

console.log("Defining three promise values: promise1, promise2 and promise3");
const promise1 = Promise.resolve(1);
const promise2 = new Promise((resolve, reject) => {
   setTimeout(resolve, 2 , 'Promise Two');
});
const promise3 = 3;

console.log("Running Promise.allSettled method on all the three promise values")

Promise.allSettled([promise1, promise2, promise3]).then((values) => console.log(values));

Arahan

  • Langkah 1 - Tentukan tiga nilai Janji, Janji1, Janji2, Janji3 dan tambah nilai padanya.

  • Langkah 2 - Jalankan kaedah Promise.allSettled() pada semua nilai Promise.

  • Langkah 3 - Paparkan nilai janji sebagai hasilnya.

Atas ialah kandungan terperinci Bagaimanakah kaedah Promise.all() berbeza daripada kaedah Promise.allSettled() dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam