Mengakses Nilai Janji
Dalam JavaScript, janji digunakan untuk mewakili operasi tak segerak. Ia menyediakan cara untuk merantai berbilang operasi tak segerak dan mengakses hasil setiap operasi sebaik sahaja operasi itu selesai.
Apabila anda memanggil .then() pada janji, anda mencipta janji baharu yang diselesaikan apabila janji asal diselesaikan. Nilai yang dihantar ke fungsi panggil balik .then() ialah hasil janji asal.
Dalam contoh daripada dokumentasi Angular, promiseB ialah janji baharu yang diselesaikan sejurus selepas promiseA diselesaikan. Nilai promiseB ialah hasil promiseA yang dinaikkan sebanyak 1.
Untuk mengakses nilai promiseB, anda boleh memanggil .then() padanya dan lulus fungsi panggil balik. Fungsi panggil balik akan menerima nilai promiseB sebagai hujahnya.
promiseB.then(function(result) { // here you can use the result of promiseB });
Sehingga ES7 (2016), Promises telah dipertingkatkan dengan sintaks tak segerak/menunggu. Menggunakan async/await, anda tidak perlu menggunakan .then() untuk mengakses nilai. Sebaliknya, anda boleh menggunakan await untuk menggantung pelaksanaan kod anda sehingga janji diselesaikan.
let result = await functionThatReturnsPromiseA(); result = result + 1;
Dalam kes ini, keputusan akan mengandungi hasil promiseA yang dinaikkan sebanyak 1. Walau bagaimanapun, await hanya boleh digunakan dalam fungsi async.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengakses Nilai Janji JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!