国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

一道常見的面試題

Heier / 689人閱讀

摘要:面試題題目頁面上有一個輸入框,兩個按鈕,按鈕和按鈕,點擊或者分別會發(fā)送一個異步請求,請求完成后,結果會顯示在輸入框中。

面試題題目
頁面上有一個輸入框,兩個按鈕,A按鈕和B按鈕,點擊A或者B分別會發(fā)送一個異步請求,請求完成后,結果會顯示在輸入框中。

題目要求,用戶隨機點擊A和B多次,要求輸入框顯示結果時,按照用戶點擊的順序顯示,舉例:

用戶點擊了一次A,然后點擊一次B,又點擊一次A,輸入框顯示結果的順序為先顯示A異步請求結果,再次顯示B的請求結果,最后再次顯示A的請求結果。

思考

當時被問到的時候,幾個想法

寫個高階函數(shù),處理異步請求

怎么保證順序,我是想將其放入數(shù)組中,然后按順序執(zhí)行

當時也沒寫出來,但覺得很有意思。回去思考實踐來一下

代碼:

/**
 * A的請求;pA(promise對象)
 * B的請求;pA(promise對象)
 * @click 事件函數(shù) handler
 */
let arr = []
let it
function* main() {
    //進來的是pA,pB封裝后的方法
    const data = yield arr.unshift()()
    if(arr.length > 0) {
        it = main()
        it.next()
    }
}
it = main()
//封裝pA,pB的請求
function pn(promise) {
    return promise.then(res => it.next(res))
}
//當點擊按鈕發(fā)送請求時,將相應的請求加入數(shù)組中
function handler(pn) {
    arr.push(pn)
    //數(shù)組不為空說明請求觸發(fā)中
    if(arr.length = 0) {
        it.next()
    }
}

說明

點擊按鈕時,先發(fā)放入請求;數(shù)組為空說明,還沒執(zhí)行;就先執(zhí)行;不為空,則加入數(shù)組中,等待執(zhí)行

利用迭代器,遍歷數(shù)組,執(zhí)行請求

封裝函數(shù)fn,思路來自之前看的Generator的異步請求方式

總結

以上是我自己思路,覺得蠻有意思的。寫下來記錄一下

文章版權歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/105474.html

相關文章

  • 一道簡單js繼承面試來查考你是否真透徹了解繼承

    摘要:但這兩個對象的原型指向了同一個實例對象,這個實例對象同樣是存在棧內(nèi)存中的然后指向了一個對象。實際是在的實例對象增加一個屬性,并將屬性賦值為,但它并沒有修改原型鏈上的屬性。側(cè)重理解的指向問題 直接先貼題目吧 function A() { this.name = a this.color = [green, yellow] } function B() { ...

    jcc 評論0 收藏0
  • 從簡歷被拒到收割今日頭條 offer,我用一年時間破繭成蝶!

    摘要:正如我標題所說,簡歷被拒。看了我簡歷之后說頭條競爭激烈,我背景不夠,點到為止。。三準備面試其實從三月份投遞簡歷開始準備面試到四月份收,也不過個月的時間,但這都是建立在我過去一年的積累啊。 本文是 無精瘋 同學投稿的面試經(jīng)歷 關注微信公眾號:進擊的java程序員K,即可獲取最新BAT面試資料一份 在此感謝 無精瘋 同學的分享 目錄: 印象中的頭條 面試背景 準備面試 ...

    tracymac7 評論0 收藏0
  • 從簡歷被拒到收割今日頭條 offer,我用一年時間破繭成蝶!

    摘要:正如我標題所說,簡歷被拒。看了我簡歷之后說頭條競爭激烈,我背景不夠,點到為止。。三準備面試其實從三月份投遞簡歷開始準備面試到四月份收,也不過個月的時間,但這都是建立在我過去一年的積累啊。 本文是 無精瘋 同學投稿的面試經(jīng)歷 關注微信公眾號:進擊的java程序員K,即可獲取最新BAT面試資料一份 在此感謝 無精瘋 同學的分享目錄:印象中的頭條面試背景準備面試頭條一面(Java+項目)頭條...

    wdzgege 評論0 收藏0
  • 簡單說 一道JS閉包面試

    摘要:說明最近看到這樣一段代碼問三行的輸出分別是什么覺得有點意思,和大家一起來聊聊。說到這里,這道題基本上可以解決了,希望大家能聽明白我上面說的話,下面的就簡單了。 說明 最近看到這樣一段代碼 function fun(n,o){ console.log(o); return { fun:function(m){ return fun...

    mushang 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<