Rumah >hujung hadapan web >tutorial js >Ketahui lebih lanjut tentang Promise.resolve()
Promise.resolve() penjelasan terperinci, contoh kod khusus diperlukan
Promise ialah mekanisme dalam JavaScript untuk mengendalikan operasi tak segerak. Dalam pembangunan sebenar, selalunya perlu untuk memproses beberapa tugas tak segerak yang perlu dilaksanakan mengikut tertib, dan kaedah Promise.resolve() digunakan untuk mengembalikan objek Promise yang telah dipenuhi.
Promise.resolve() ialah kaedah statik kelas Promise, yang menerima parameter dan mengembalikan objek Promise. Jika parameter masuk ialah objek Promise, Promise.resolve() akan mengembalikan objek secara terus jika parameter masuk ialah objek boleh kemudian (iaitu objek dengan kaedah kemudian), Promise.resolve() akan menukar objek itu kepada; objek Janji dan kembalikan; jika parameter masuk adalah nilai primitif (bukan objek), Janji Ditepati dengan nilai primitif sebagai hasilnya akan dikembalikan.
Penggunaan dan tingkah laku Promise.resolve() dijelaskan secara terperinci melalui contoh kod:
Contoh 1:
Promise.resolve("成功") .then((msg) => { console.log(msg); }) .catch((err) => { console.error(err); }); // 输出:成功
Dalam contoh di atas, kami mencipta objek Fulfilled Promise melalui kaedah Promise.resolve() . Dalam contoh ini, parameter masuk ialah rentetan "kejayaan", jadi Promise.resolve("success") secara langsung mengembalikan objek Promise dengan status Fulfilled dan hasil "berjaya". Kemudian kami menggunakan kaedah .then() untuk memproses hasil objek Promise dan mencetaknya melalui console.log().
Contoh 2:
Promise.resolve(Promise.reject(new Error("失败"))) .then((msg) => { console.log(msg); }) .catch((err) => { console.error(err); }); // 输出:Error: 失败
Dalam contoh di atas, kami menukar objek Promise dalam keadaan Ditolak kepada objek Promise dalam keadaan Fulfilled melalui kaedah Promise.resolve(). Dalam contoh ini, parameter yang kami masukkan ialah Promise.reject(new Error("Failure")), yang mengembalikan objek Promise dalam keadaan Rejected. Kemudian kami menggunakan Promise.resolve() untuk menukar objek Promise menjadi objek Fulfilled Promise dan memproses hasil objek Promise melalui kaedah .catch() dan mencetaknya melalui console.error().
Contoh 3:
Promise.resolve({ name: "张三", age: 18 }) .then((obj) => { console.log(obj.name, obj.age); }) .catch((err) => { console.error(err); }); // 输出:张三 18
Dalam contoh di atas, kami mencipta objek Fulfilled Promise melalui kaedah Promise.resolve(). Dalam contoh ini, parameter yang dihantar ialah objek { name: "Zhang San", umur: 18 }, jadi Promise.resolve({ name: "Zhang San", umur: 18 }) mengembalikan secara langsung objek yang statusnya Ditepati dan Hasilnya ialah objek Janji untuk objek ini. Kemudian kami menggunakan kaedah .then() untuk memproses hasil objek Promise dan mencetak nama atribut dan umur objek melalui console.log().
Ringkasan:
Melalui contoh kod di atas, kita dapat melihat bahawa fungsi kaedah Promise.resolve() adalah untuk menukar nilai kepada objek Fulfilled Promise. Ia boleh menerima pelbagai jenis parameter, termasuk objek Promise, objek boleh kemudian dan nilai primitif. Gunakan kaedah Promise.resolve() untuk menukar sebarang jenis nilai kepada objek Promise dengan mudah dan melakukan pemprosesan seterusnya padanya.
Perlu diambil perhatian bahawa objek Promise yang dikembalikan oleh kaedah Promise.resolve() ialah objek Fulfilled Promise, jadi pemprosesan seterusnya boleh diproses terus menggunakan kaedah .then() dan bukannya menggunakan kaedah .catch(). keadaan tidak normal.
Atas ialah kandungan terperinci Ketahui lebih lanjut tentang Promise.resolve(). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!