中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ES6 Promise對象概念與用法分析

發布時間:2020-08-29 06:07:19 來源:腳本之家 閱讀:152 作者:柒青衿 欄目:web開發

本文實例講述了ES6 Promise對象概念與用法。分享給大家供大家參考,具體如下:

1.Promise概念

Promise 對象有三種狀態:

① Fulfilled 可以理解為成功的狀態
② Rejected 可以理解為失敗的狀態
③ Pending 既不是 Fulfilld 也不是 Rejected 的狀態,可以理解為 Promise 對象實例創建時候的初始狀態

2.三個重要方法

在 Promise 對象當中有三個重要方法————resolve, reject和then。

resolve 方法可以使 Promise 對象的狀態改變成成功,同時傳遞一個參數用于后續成功后的操作,在這個例子當中就是 Hello World!字符串。

reject 方法則是將 Promise 對象的狀態改變為失敗,同時將錯誤的信息傳遞到后續錯誤處理的操作。

function printHello (ready) {
 return new Promise(function (resolve, reject) {
 if (ready) {
  resolve("Hello");
 } else {
 reject("Good bye!");
}
});
}
function printWorld () {
alert("World");
}
function printExclamation () {
alert("!");
}
printHello(true)
.then(function(message){
alert(message);
})
.then(printWorld)
.then(printExclamation); //分別彈出 Hello World !三個彈窗

上述例子通過鏈式調用的方式,按順序打印出了相應的內容。then 可以使用鏈式調用的寫法原因在于,每一次執行該方法時總是會返回一個 Promise 對象。另外,在 then onFulfilled 的函數當中的返回值,可以作為后續操作的參數,因此上面的例子也可以寫成:

function printHello (ready) {
 return new Promise(function (resolve, reject) {
 if (ready) {
  resolve("Hello");
 } else {
 reject("Good bye!");
}
});
}
printHello(true).then(function (message) {
 return message;
}).then(function (message) {
 return message + ' World';
}).then(function (message) {
 return message + '!';
}).then(function (message) {
alert(message);
}); //一個彈窗 Hello World !

希望本文所述對大家ECMAScript程序設計有所幫助。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

建水县| 盐津县| 包头市| 双流县| 陕西省| 绥宁县| 青铜峡市| 龙川县| 辽中县| 茂名市| 北京市| 株洲县| 泸西县| 尖扎县| 呼伦贝尔市| 绍兴县| 柳州市| 黄冈市| 金乡县| 尚义县| 布尔津县| 阜城县| 湟源县| 楚雄市| 淮阳县| 仙游县| 彩票| 施秉县| 全椒县| 山东| 綦江县| 内黄县| 邢台县| 连平县| 布尔津县| 铜梁县| 隆德县| 宝山区| 乐业县| 灵武市| 台中县|