站長資訊網
        最全最豐富的資訊網站

        es6中yield是什么意思

        在es6中,yield是生成器用來內部暫停本身運行的關鍵字;yield后面跟一個生成器函數或者其他可迭代的對象,yield表達式的返回值,就是其后面可迭代對象迭代完畢時的返回值,語法為“function*gen(){yield表達式}”。

        es6中yield是什么意思

        本教程操作環境:windows10系統、ECMAScript 6.0版、Dell G3電腦。

        es6中yield是什么意思

        yield是ES6中的Generator(生成器)用來內部暫停本身運行的關鍵字。

        請注意“內部”一詞,生成器函數并不能由外部邏輯暫停,只能由本身通過yield暫停。

        yield關鍵字后可以跟隨變量,也可以單獨使用。如果yield后面跟隨變量(我們可以稱之為yield表達式),生成器函數暫停后再次恢復運行時,傳入的參數作為整體yield表達式的值參與后續的邏輯運算;

        當yield后不跟隨變量,單獨使用的yield僅僅是作為暫停生成器函數使用,生成器恢復運行后被傳入的參數作為yield的值參與后續運算。

        舉例

        第 1 步,構造一個生成器函數。

        function* numbers () {      yield 1;      yield 2;          return 'numbers';  }

        第 2 步,在上述生成器函數外層做一個代理。

        function* delegate () {      var str = yield* numbers();      console.log(str);            yield 3;      return 'delegate'; }

        第 3 步,構造迭代器。

        var iterator = delegate();

        第 4 步,輸出迭代結果。

         /**   * 第一次輸出結果   * { value: 1, done: false }   */  console.log(iterator.next()) // 第一次輸出    /**   * 第二次輸出結果   * { value: 2, done: false }   */  console.log(iterator.next()) // 第二次輸出    /**   * 第三次輸出結果   * numbers   * { value: 3, done: false }   */  console.log(iterator.next()) // 第三次輸出    /**   * 第四次輸出結果   * { value: 'delegate', done: true }   */  console.log(iterator.next()) // 第四次輸出

        輸出結果描述

        第三次輸出時,輸出兩行內容。第一行內容為 delegate 函數中 console.log(str) 輸出的,值為 numbers 函數的返回值。

        第四次輸出時,輸出一行內容,其中的 value 值為 delegate 函數的返回值。此時,done 屬性為 true。

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 四虎精品成人免费永久| 国产精品videossex白浆| 成人精品一区二区三区免费看 | 91视频精品全国免费观看| 国产精品色内内在线播放| 亚洲第一极品精品无码久久| 国产乱人伦偷精品视频不卡| 国产亚洲精品无码拍拍拍色欲 | 久久99精品久久久久久水蜜桃| 无码欧精品亚洲日韩一区| 欧美日韩国产精品系列| 国产亚洲精品看片在线观看| 成人精品一区二区久久| 久久这里只有精品久久| 51午夜精品免费视频| 国产亚洲精品岁国产微拍精品| 日韩精品一区二区三区中文| 亚洲精品无码久久久久sm| 国内精品久久久久久麻豆| 国产99久久久国产精品~~牛| 日本久久久精品中文字幕| 国产欧美久久久精品| 欧美精品天天操| 亚洲国产成人久久精品影视| 九九精品免视看国产成人| 久久er国产精品免费观看2| 国产精品免费网站| 精品一区二区三区四区| 精品视频一区二区三区免费| 国产精品成人va| 日本人精品video黑人| 91久久精品国产免费直播| 国产成人高清精品一区二区三区 | 嫩草伊人久久精品少妇AV| 亚洲国产精品VA在线观看麻豆 | 天天爽夜夜爽夜夜爽精品视频| 精品久久久久久久久久久久久久久 | 国产精品日韩欧美一区二区三区| 久久精品国产亚洲av麻豆小说| 热re99久久精品国99热| 国产精品伦一区二区三级视频|