搜尋

首頁  >  問答  >  主體

node.js - 求解 你不知道的JavaScript中 Generator+Promise的一段範例程式碼

雷雷
某草草某草草2797 天前677

全部回覆(2)我來回復

  • ringa_lee

    ringa_lee2017-06-15 09:23:42

    第一個迭代器的next調用後會執行到第一個yield這裡,這時候並未賦值,而是返回了一個基於promise的ajax函數
    這個promise決議後會將ajax請求的返回值作為參數的形式賦值給then中第一個函數當參數
    像這樣

    (() => new Promise((resolve => { resolve("我是参数"); })))().then(data => console.log(data), err => { throw err; })    //"我是参数"

    接下來會把這個參數賦值與第一個yield的位置並執行完這個函數

    回覆
    0
  • 天蓬老师

    天蓬老师2017-06-15 09:23:42

    //這裡拿到的 text 應該沒有賦到值呀

    理解錯誤了,text 就是 request 成功的結果,建議你把 Promise 再理解一次

    回覆
    0
  • 取消回覆