Promise是什么?
MDN的描述:
Promise 對象用于表示一個異步操作的最終狀態(tài)(完成或失敗),以及該異步操作的結(jié)果值揍很。
簡單明了
阮神的描述:
所謂promise,簡單說是一個容器万伤,里面保存著某個未來才會結(jié)束的事件(通常是一個異步操作)的結(jié)果窒悔,從語法上說,promise是一個對象敌买,從它可以獲取異步操作的消息简珠,promise提供了統(tǒng)一的API,各種異步操作都可以用同樣的方法進行處理。
promise 的用法
- promise對象是一個構(gòu)造函數(shù)聋庵,用來生成promise實例;
創(chuàng)建一個promise對象實例
var promise = new Promise( function( resolve, reject) {
//some code
if(//異步操作成功){
resolve(value);
}else{
reject(error);
}
});
個人理解
Promise對象會返回對象內(nèi)異步操作的狀態(tài)膘融,我們可以根據(jù)狀態(tài)進行后續(xù)操作
異步成功 .then 進行回調(diào)操作
異步失敗 .cache 進行錯誤提示獲取其他。
用來解決回調(diào)地獄祭玉,更清晰的表達回調(diào)
我們來對比一下:
以上是個人整理和總結(jié)氧映,希望對大家有幫助!M鸦酢5憾肌!