JavaScript Promise 是管理非同步操作的便利方法之一。承諾代表了未來可能實現或失敗的價值觀。它們用於管理非同步操作的結果並減少回調函數的問題。
承諾表
創造承諾
Promise 建構函式用於在 JavaScript 中建立 Promise。
let myPromise = new Promise((resolve, reject) => { let success = true; // Bu yerda sizning asinxron operatsiyangiz bo'lishi mumkin if (success) { resolve("Bu operatsiya muvaffaqiyatli tugadi!"); } else { reject("Bu operatsiya muvaffaqiyatsiz tugadi."); } });
resolve 和reject 函數用來控制JavaScript Promise 非同步操作的結果。
解
當 Promise 成功執行時,會呼叫resolve 函數。該函數接受一個值作為參數,然後將該值傳遞給 .then() 方法。
let Promise = new Promise((resolve, reject) => { let success = true; // Bu yerda sizning asinxron operatsiyangiz bo'lishi mumkin if (success) { resolve("Bu operatsiya muvaffaqiyatli tugadi!"); } });
在上面的範例中,如果 success 變數為 true,則呼叫解析函數並顯示「此操作成功完成!」傳輸值。
透過then 方法將結果輸出到 cansole.log 中:
Promise.then((result) => { console.log(result); // "Bu operatsiya muvaffaqiyatli tugadi!" ni cansole.log da chiqaradi });
拒絕
當 Promise 失敗時,會呼叫reject 函數。此函數將有關錯誤或失敗的資訊作為參數,然後將該值傳遞給 .catch() 方法。
let mPromise = new Promise((resolve, reject) => { let success = false; // Bu yerda sizning asinxron operatsiyangiz bo'lishi mumkin if (!success) { reject("Bu operatsiya muvaffaqiyatsiz tugadi."); } });
在上面的範例中,如果 success 變數為 false,則呼叫拒絕函數並顯示「此操作失敗」。傳輸值。
mPromise .then((result) => { console.log(result); // Bu yerga kirmaydi keyingi blockga o'tadi }) .catch((error) => { console.error(error); // "Bu operatsiya muvaffaqiyatsiz tugadi." ni cansole.logda chop etadi });
以上是JavaScript 承諾的詳細內容。更多資訊請關注PHP中文網其他相關文章!