ES6中Promise的入門 結合例子

2022-01-15 05:20:37 字數 1474 閱讀 1889

解決**地獄
//以往**方式

函式1(function());

...});

});//promise**方式:鏈式呼叫,可構建多個**函式。

//例如請求乙個ajax之後,需要這個拿到這個ajax的資料去請求下乙個ajax

promise().then().then()...catch()

當頁面邏輯複雜起來的時候,管理起來特別不容易。

為解決這種問題,commonjs提出promise概念.

//首先要建立promise例項

let promise = new promise( (resolve, reject) => )

//在promise的then方法中執行**

promise.then(function(),function()

}

解釋一下上面幾個概念:

定時器呼叫
最簡單的例子

const promise = new promise(function(resolve, reject))

promise.then(function(),function())

也可以寫成**函式的方式,並把reject狀態的**函式放到catch裡

const promise = new promise((resolve, reject) => )

promise.then( () => ).catch(() => )

請求事件通常會附帶資料給**函式。要傳遞引數,只需要附帶在函式後面即可

注意!傳多個資料需要通過陣列傳遞

const promise = new promise((resolve, reject) => )

promise.then((value) => ).catch((value) => )

傳多個引數➡

//第一種,可以看到單個傳值是無效的

const promise = new promise((resolve, reject) => )

promise.then((value1,value2) => ).catch((value) => )

//第二種:陣列傳值

const promise = new promise((resolve, reject) => )

promise.then((value1) => ).catch((value) => )

以上就是我對promise的理解啦!是一些promise入門的簡單知識點.

想深入了解的話可以看看阮一峰老師的《es6入門》:

ES6中的Promise物件

列印出promise,我們能看出promise是乙個建構函式 那什麼是promise?promise是非同步程式設計的一種解決方案,它有三種狀態,promise執行完成後,只會有成功和失敗的狀態,並且不可被更改 pending 就緒狀態 resolved 成功狀態 pending 就緒狀態 reje...

使用ES6模擬Promise

const promise newstatus param newvalue param queue 執行的作業佇列 changestatus newstatus,newvalue,queue this promisestatus newstatus this promivevalue newval...

ES6關於promise技巧

1.推向promise物件推向 不同的狀態 const pro newpromise resolve,reject 2.原型成員 例項成員 註冊乙個後續處理函式,當promise為resolved狀態是執行該函式,當promise為rejected狀態是執行該函式的第二個引數 catch 註冊乙個後...