生成器和生成器函数 例子

发布时间:2021-08-02 23:37 来源:https://blog.51cto.com/u_15135 阅读:138 作者:13522679763-Eric 栏目: 云计算 欢迎投稿:712375056

      // console.log(111); 

    // next 方法可以传入 实参

 // // 函数代码分隔符

      }

    //     setTimeout(() => {

    console.log(iterator.next()); 

    // console.log(iterator);

        iterator.next();

        setTimeout(() => {

        }, 1000);

    console.log(iterator.next('BBB')); 



      }, 2000);

    function three(){

---------------------------------

      yield one();

          let data = '用户数据';

      function getUsers(){


---------------------------------------

      console.log(v);


------------------------------

 

    }

    //     console.log(111);

        iterator.next();

      }

      function getGoods(){

    // // console.log(iterator);

        console.log(111);

          // 调用 next方法 并且将数据传入

          iterator.next(data);

    // 函数代码分隔符

 

        }, 1000);

       console.log(one);

      function * gen(){

      function getOrders(){

      // console.log(444); 

        console.log(333);


      yield '一只没有耳朵';

          let data = '订单数据';

        let orders = yield getOrders();

    //  }, 1000);

    function one(){

      }

    //  let iterator = gen();  

    //   // console.log('hello generator');  

      yield '真奇怪';


    // }

    function * gen(){

    // 调用生成器函数

    let iterator = gen();

        setTimeout(() => {


          let data = '商品数据';

    //  iterator.next(); // 222

      }, 1000);

      // console.log(222); 

    //         setTimeout(() => {

 

    }

        let users = yield getUsers();

    }

 


    //         console.log(333);


      setTimeout(() => {

        console.log(222);

    //  iterator.next(); // 444

 function * gen(arg){


      }, 3000);

 

      iterator.next();

        }, 1000);

    // 遍历 

 

    //  iterator.next(); // 111

      setTimeout(() => {

      }

    }

    // let iterator = gen(); 

          iterator.next(data);

    // console.log(iterator.next());



     let iterator = gen('AAA'); 


      yield two();

        console.log(goods);

       let one =  yield 111;

 

        setTimeout(() => {

    function two(){

          iterator.next(data);

      setTimeout(() => {

        let goods = yield getGoods();

      // console.log(333); 

    }

    }

      yield '一只没有尾巴';

        yield 333;

    // console.log(iterator.next());

  // 回调地域

    // // iterator.next(); // hello generator

      yield three();

 

    let iterator = gen();

    iterator.next();

        console.log(orders);

    for(let v of gen()){

    // function * gen(){

    }


    // 调用生成器函数

   // 模拟获取 用户数据-》订单数据-》商品数据

    //         }, 3000);

        console.log(users);

    //     }, 2000);

 

    function * gen(){



    iterator.next();

        yield 222;

      console.log(arg);

    //  iterator.next(); // 333

    //         console.log(222);

    //  setTimeout(() => {

免责声明:本站发布的内容(图片、视频和文字)以原创、来自本网站内容采集于网络互联网转载等其它媒体和分享为主,内容观点不代表本网站立场,如侵犯了原作者的版权,请告知一经查实,将立刻删除涉嫌侵权内容,联系我们QQ:712375056,同时欢迎投稿传递力量。