摘要:耦合度過高,可維護性差。只能在回調(diào)里處理異常。的使用構(gòu)造函數(shù)是一個構(gòu)造函數(shù),使用操作符返回一個對象構(gòu)造函數(shù)接收一個函數(shù)作為參數(shù)函數(shù)有兩個函數(shù)類型的參數(shù)和
異步解決方案良藥Promise promise
目前比較流行的異步解決方案,本質(zhì)上是一個構(gòu)造函數(shù)
1、狀態(tài)promise有三種狀態(tài),初始的狀態(tài)都是pedding,包括成功的狀態(tài)失敗的狀態(tài)還有等待的狀態(tài)
promise.all()所有的promise對象成功才會觸發(fā)成功的狀態(tài),否則失敗狀態(tài)
promise.race()任意一個子promise的狀態(tài)觸發(fā)后
2、出現(xiàn)的原因我們來通過一個例子來說明一下異步調(diào)用的問題
let url1 = "http://xxx.xxx.1"; $.ajax({ url:url1, error:function (error) {}, success:function (data1) { console.log(data1); } });
那當我們發(fā)出多個請求的時候就只能以嵌套的方式來解決
let url1 = "http://xxx.xxx.1"; let url2 = "http://xxx.xxx.2"; let url3 = "http://xxx.xxx.3"; $.ajax({ url:url1, error:function (error) {}, success:function (data1) { console.log(data1); $.ajax({ url:url2, data:data1, error:function (error) {}, success:function (data2) { console.log(data2); $.ajax({ url:url3, data, error:function (error) {}, success:function (data3) { console.log(data3); } }); } }); } });3、主要的問題
代碼臃腫。
可讀性差。
耦合度過高,可維護性差。
代碼復(fù)用性差。
容易滋生 bug。
只能在回調(diào)里處理異常。
4 、Promise 的使用 構(gòu)造函數(shù)Promise 是一個構(gòu)造函數(shù),使用 new 操作符返回一個 promise 對象
構(gòu)造函數(shù)接收一個 excutor 函數(shù)作為參數(shù)
excutor 函數(shù)有兩個函數(shù)類型的參數(shù) resolve 和 reject
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/105331.html
摘要:的翻譯文檔由的維護很多人說,阮老師已經(jīng)有一本關(guān)于的書了入門,覺得看看這本書就足夠了。前端的異步解決方案之和異步編程模式在前端開發(fā)過程中,顯得越來越重要。為了讓編程更美好,我們就需要引入來降低異步編程的復(fù)雜性。 JavaScript Promise 迷你書(中文版) 超詳細介紹promise的gitbook,看完再不會promise...... 本書的目的是以目前還在制定中的ECMASc...
摘要:從最開始的到封裝后的都在試圖解決異步編程過程中的問題。為了讓編程更美好,我們就需要引入來降低異步編程的復(fù)雜性。寫一個符合規(guī)范并可配合使用的寫一個符合規(guī)范并可配合使用的理解的工作原理采用回調(diào)函數(shù)來處理異步編程。 JavaScript怎么使用循環(huán)代替(異步)遞歸 問題描述 在開發(fā)過程中,遇到一個需求:在系統(tǒng)初始化時通過http獲取一個第三方服務(wù)器端的列表,第三方服務(wù)器提供了一個接口,可通過...
摘要:簽訂協(xié)議的兩方分別是異步接口和。在異步函數(shù)中,使用異常捕獲的方案,代替了的異常捕獲的方案。需要注意的是,在異步函數(shù)中使異步函數(shù)用時要使用,不然異步函會被同步執(zhí)行。 同步與異步 通常,代碼是由上往下依次執(zhí)行的。如果有多個任務(wù),就必需排隊,前一個任務(wù)完成,后一個任務(wù)才會執(zhí)行。這種執(zhí)行模式稱之為: 同步(synchronous) 。新手容易把計算機用語中的同步,和日常用語中的同步弄混淆。如,...
摘要:前言異步編程模式在前端開發(fā)過程中,顯得越來越重要。隨著新標準的到來,處理異步數(shù)據(jù)流又有了新的方案。接下來我們介紹這兩種處理異步編程的方案。仍在繼續(xù)執(zhí)行,但執(zhí)行結(jié)果將被丟棄。使得異步代碼看起來像同步代碼,再也沒有回調(diào)函數(shù)。 前言 異步編程模式在前端開發(fā)過程中,顯得越來越重要。從最開始的XHR到封裝后的Ajax都在試圖解決異步編程過程中的問題。隨著ES6新標準的到來,處理異步數(shù)據(jù)流又有了新...
摘要:前言異步編程模式在前端開發(fā)過程中,顯得越來越重要。隨著新標準的到來,處理異步數(shù)據(jù)流又有了新的方案。接下來我們介紹這兩種處理異步編程的方案。仍在繼續(xù)執(zhí)行,但執(zhí)行結(jié)果將被丟棄。使得異步代碼看起來像同步代碼,再也沒有回調(diào)函數(shù)。 前言 異步編程模式在前端開發(fā)過程中,顯得越來越重要。從最開始的XHR到封裝后的Ajax都在試圖解決異步編程過程中的問題。隨著ES6新標準的到來,處理異步數(shù)據(jù)流又有了新...
閱讀 1661·2021-09-02 15:41
閱讀 1048·2021-09-02 15:11
閱讀 1345·2021-07-28 00:15
閱讀 2399·2019-08-30 15:55
閱讀 1207·2019-08-30 15:54
閱讀 1749·2019-08-30 15:54
閱讀 3023·2019-08-30 14:02
閱讀 2576·2019-08-29 16:57