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

WBOY
Lepaskan: 2023-08-25 11:45:05
ke hadapan
822 orang telah melayarinya

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));
Salin selepas log masuk

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));
Salin selepas log masuk

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!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!