1. 程式人生 > 其它 >17.生成器函式宣告與呼叫

17.生成器函式宣告與呼叫

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> </head> <body> <script> // 生成器就是一個特殊的函式,可以用來進行非同步程式設計,ES6提供的一種非同步程式設計解決方案,語法行為與傳統函式完全不同 // 之前的寫法是純回撥函式 // 中間必須加上*號 function* gen() { // console.log("生成器函式"); console.log(111);
yield "函式分隔符"; //yield函式程式碼的分隔符,三個分隔符產生四塊程式碼 console.log(222);
yield "函式分隔符2"; console.log(333);
yield "函式分隔符3"; console.log(444); }
let result = gen(); //直接呼叫不行 // console.log(result);
// 藉助next方法去呼叫 // result.next(); // result.next(); // result.next(); // result.next();
// 遍歷 for (const iterator of gen()) { console.log(iterator); } </script> </body> </html>