generator(特點,專案應用)

2021-10-24 09:47:37 字數 580 閱讀 4133

**

特點:function 關鍵字與函式名之間有乙個*號;

generator函式內部使用yield表示式,定義內部的不同狀態;

generator函式呼叫不像普通函式那樣直接呼叫,要想函式執行必須呼叫遍歷器物件的next方法,也就是說想要執行函式就需要使用next方法,呼叫一次next方法執行一次yield表示式,直到執行完yield表示式。

function

*gener()

let a=

gener()

console.

log(a.

next()

)//console.

log(a.

next()

)//console.

log(a.

next()

)//

console.

log(a.

next()

)//

優點:1.利用迴圈,每呼叫一次,就使用一次,不佔記憶體空間 2.打破了普通函式執行的完整性

缺點: 需要用next()方法手動呼叫,直接呼叫返回無效iterator

Generator函式的語法和應用

基本概念 狀態機,封裝了多個內部狀態 返回乙個遍歷器物件,通過改物件可以一次遍歷generator函式內部的每乙個狀態 帶 號,yeild表示式定義不同的內部狀態 呼叫 generator 函式後,該函式並不執行,返回的也不是函式執行結果,而是乙個指向內部狀態的指標物件,也就是遍歷器物件 gener...

redis cluster 場景應用特點

1 快取資料 合理地利用redis儲存快取資料,可以有效地加快資料訪問,降低後端資料來源的壓力 2 計數器 合理利用incr getset等命令以及lua指令碼,實現計數 限制訪問等功能 3 排行榜 合理地使用列表 有序集合,可以方便地構建排行榜系統 4 簽到 活躍使用者 標籤 此類業務場景可以利用...

對日外包專案特點

本人參加過多個對日外包的專案,對其有以下幾點看法 1 專案階段主要是從內部設計到單體測試。2 總體來說專案比較簡單,做起來非常枯燥。日本的軟體工程比較規範,文件做的非常細。基本上就像做翻譯工作,如做內部設計就是把外部設計重新寫一遍,只是換一種寫法而已。沒有任何自己發揮的地方。很多時候就覺得用打字員就...