Promise用法詳解,求promise的用法

2023-06-04 23:10:09 字數 2698 閱讀 7419

1樓:學海語言教育

promise物件只有三種狀態

node是以非同步(async)**著稱的,其非同步性提高了程式的執行效率,但同時也減少了程式的可讀性。如果我們有幾個非同步操作,並且後一個操作需要前一個操作返回的資料才能執行,這樣按照node的一般執行規律,要實現有序的非同步操作,通常是一層加一層巢狀下去。

這個問題es6提出了promise的實現。

promise用途:

promise物件有兩個特點:

1)物件的狀態不受外界影響。promise物件代表一個非同步操作,有三種狀態:pending(進行中)、fulfilled(已成功)和rejected(已失敗)。

只有非同步操作的結果,可以決定當前是哪一種狀態,任何其他操作都無法改變這個狀態。這也是promise這個名字的由來,它的英語意思就是 「承諾」 ,表示其他手段無法改變。

2)一旦狀態改變,就不會再變,任何時候都可以得到這個結果。promise物件的狀態改變,只有兩種可能:從pending變為fulfilled和從pending變為rejected。

只要這兩種情況發生,狀態就凝固了,不會再變了,會一直保持這個結果,這時就稱為 resolved(已定型)。如果改變已經發生了,你再對promise物件新增**函式,也會立即得到這個結果。這與事件(event)完全不同,事件的特點是,如果你錯過了它,再去監聽,是得不到結果的。

有了promise物件,就可以將非同步操作以同步操作的流程表達出來,避免了層層巢狀的**函式。此外,promise物件提供統一的介面,使得控制非同步操作更加容易。promise也有一些缺點。

首先,無法取消promise,一旦新建它就會立即執行,無法中途取消。其次,如果不設定**函式,promise內部丟擲的錯誤,不會反應到外部。第三,當處於pending狀態時,無法得知目前進展到哪一個階段(剛剛開始還是即將完成)。

一般形式

promise中的引數executor是一個執行器函式,它有兩個引數resolve和reject。它內部通常有一些非同步操作,如果非同步操作成功,則可以呼叫resolve()來將該例項的狀態置為fulfilled,即已完成的,如果一旦失敗,可以呼叫reject()來將該例項的狀態置為rejected,即失敗的。

求promise的用法

2樓:單身待解救

語法標註解釋 promise英音:['prɔmis]美音:['prɑmɪs]

名詞 承諾,諾言[c][(of)][that)][to-v]

例子:give me your promise that you'll never be late again.

答應我你絕不再遲到了。

2.希望,前途[u][s]

the young man shows promise as a poet.

例子:這位青年有成為詩人的希望。

及物動詞 vt.

1.允諾,答應[+to-v][+that][o1][o5]

he promised me the book.

例子:他答應給我這本書。

he promised to help us.

例子:他答應要幫助我們。

i can't give you the book; i've promised it to susan.

例子:我不能把這本書給你;我已經答應給蘇珊了。

2.給人以。的指望;有。的可能[+to-v]

it promises to be fine tomorrow.

例子:明天有希望是個好天氣。

3.【口】向。保證,向。斷言。

不及物動詞 vi.

1.允諾,作出保證。

2.有指望,有前途[q]

that project promises well.

例子:那個工程很有希望成功。

promise的用法總結

3樓:順心還婉順的君子蘭

n.諾言;預示;約定;(有)希望。

v.允諾;發誓;答應;有希望。

promise用法總結:

1.承諾,諾言[c][(of)][that)][to-v]

give me your promise that you'll never be late again.

答應我你絕不再遲到了。

2.希望,前途[u][s]

the young man shows promise as a poet.

這位青年有成為詩人的希望。

允諾,答應[+to-v][+that][o1][o5]

he promised me the book.

他答應給我這本書。

he promised to help us.

他答應要幫助我們。

i can't give you the book; i've promised it to susan.

我不能把這本書給你;我已經答應給蘇珊了。

2.給人以。的指望;有。的可能[+to-v]

it promises to be fine tomorrow.

明天有希望是個好天氣。

advise 的用法。

英語單詞for 的用法 (2)

promise的用法。

高中動詞固定搭配。

英語單詞remind 的用法。

求個人星盤詳解V求個人星盤詳解V

八字比星盤準。出生年月日時 公曆 1984年 9月 23日 12點 此命五行金旺缺土 日主天干為金,生於秋季 必須有水助,但忌木太多。1木1火0土3金3水,3 5 身弱,可補金和土 農曆 甲子年 八月 廿八 午時 八字 甲子 癸酉 庚申 壬午 五行 木水 水金 金金 水火 納音 海中金 劍鋒金 石榴...

求第六題詳解,求第六題詳解

假設三維列向量bai 的元素為 du a,b,c,則 的轉置zhi與 dao 的乘積版為標量 a b c 這恰好是三權階方陣 與 的轉置乘積的主對角線元素之和,因此等於1 1 1 3 求第6題詳細過程 10 勻速運動,a與b之間沒有摩擦力,摩擦力為0 勻速運動,拉力與摩擦力為平衡力,b與地面的摩擦力...

求失業保險詳解

中華人民共和國社會保險法第四十五條 失業人員符合下列條件的,從失業保險 中領取失業保險金 一 失業前用人單位和本人已經繳納失業保險費滿一年的 二 非因本人意願中斷就業的 三 已經進行失業登記,並有求職要求的。第四十六條 失業人員失業前用人單位和本人累計繳費滿一年不足五年的,領取失業保險金的期限最長為...