Promise/A 規(guī)范中并沒有規(guī)定 promise 對象從何而來,在 jQuery 中通過調用 $.Deferred() 得到 promise 對象,ES6 中通過實例化 Promise 類得到 promise 對象。這里我們使用 ES 的語法,構造一個類,通過實例化的方式返回 promise 對象,由于 Promise 已經存在,我們暫時給這個類取名為 Deferred。
class Deferred { constructor(callback) { const resolve = () => { // TODO
} const reject = () => { // TODO
} try {
callback(resolve, reject)
} catch (error) {
reject(error)
}
}
}復制代碼
構造函數接受一個 callback,調用 callback 的時候需傳入 resolve、reject 兩個方法。
Promise 的狀態(tài)
Promise 一共分為三個狀態(tài):
?pending:等待中,這是 Promise 的初始狀態(tài);
更多關于云服務器,域名注冊,虛擬主機的問題,請訪問西部數碼官網:m.ps-sw.cn