es6 在迭代器中獲取非同步的值

2021-07-14 13:45:08 字數 820 閱讀 9754

由於迭代器在主線程中執行,所以我們普通

所以無法王成兩個yield的同步操作,下面我們完成同步操作,就是把yield2的操作在子執行緒王成

例子:

function main2(fn));

}const list = main2(function *());

console.log('finish...',dd);

return dd;

});

注意的是我們把整個迭代器帶入子執行緒中了!!!!!!

loading...

main-list.js?0e37:180finish2...

main-list.js?0e37:145object

main-list.js?0e37:192parsed data undefined

main-list.js?0e37:175 ... [object, object, object, object, object]

main-list.js?0e37:177finish... [object, object, object, object, object]

main-list.js?0e37:109 parsed json [object, object, object, object, object]

看看上面的三個log同步把!!!

ES6的 迭代器

1,iterator 迭代器是es6提出的一種新的遍歷機制,目的是讓各種資料結構可方便地被訪問。可迭代物件由symbol.iterator實現,用symbol.iterator作為物件的屬性,鍵symbol.iterator的值是個函式,函式的執行返回乙個陣列的迭代器,可見 迭代器物件與symbol...

es6內容總結 三 迭代器

迭代器 生成器1.迭代器 迭代器 iterator 是一種介面,為各種不同的資料結構提供統一的訪問機制,任何資料結構只要部署iterator 介面,就可以完成遍歷操作。原生具備 iterator 介面的資料 可用for of 遍歷 array arguments setmap string type...

ES6中的生成器和迭代器

生成器函式generator function 用function name 來宣告,呼叫生成器函式則會返回乙個生成器物件generator,並且符合可迭代協議和迭代器協議,因此generator也是乙個迭代器物件,具有next 方法,呼叫next 方法會執行生成器函式內的語句 即遍歷生成器函式內部...