關於generator函式的理解與使用

2021-10-21 01:19:38 字數 526 閱讀 8001

關於generator函式的理解與使用

在js中普通function一但建立並呼叫後,直到return,是不會被打斷,而generator函式是es6提供的乙個關於非同步程式設計的解決方案,特點就是generator函式不會返回執行結果,而是便利函式內部的結果或者狀態,通過函式.next()一次次的輸出**順序的結果或者狀態。

看下面的例項:

//普通函式

functionfn(

)fn()

;// 普通函式

// 這是乙個普通函式

//generator函式,宣告方式不同

function

*generator()

generator()

.next()

;//generator()

.next()

;//generator()

.next()

;//// done:false 代表遍歷沒有結束,下面還有待執行的狀態;done:true 是結束

迭代函式 Generator函式的理解

一 基本用法 generator函式跟普通函式在寫法上的區別就是,多了乙個星號 並且只有在generator函式中才能使用yield 什麼是yield呢,他相當於generator函式執行的中途暫停點,比如下方有3個暫停點。而怎麼才能暫停後繼續走呢?那就得使用到next方法,next方法執行後會返回...

Generator函式與async函式的區別介紹

generator函式 generator函式是es2015提供的非同步解決方案,與普通函式有很大的不同 特徵 1 在function關鍵字後面跟乙個 號 2 在函式體內部使用yield表示式作為乙個狀態 generator函式返回乙個遍歷器,可通過for of方法遍歷每個狀態 用法 執行gener...

Generator函式學習

例子1 const test function x const a test 1 console.log a.next 3 x 2 3 console.log a.next 11 22 3 2 11 3 console.log a.next 2 18 3 2 3 console.log a.next...