美文网首页
ES6引入的新的数据类型

ES6引入的新的数据类型

作者: Willworkgogogo | 来源:发表于2017-04-08 10:56 被阅读0次

    Map

    generator

    迭代器,利用yield关键字可实现多次返回

    // max 指菲波那切数列的长度
    function* fib(max) {
      var t,
          a  = 0,
          b  = 1,
          n  = 1;
      while (n < max) {
        yield a;
        t  = a + b;
        a = b;
        b = t;
        n++
      }
      return a;
    }
    // 执行输出
    var f = fib(5)  // 函数返回generator对象,操作后只能这样去实现, fib(5).next()方法不起效?why?
    f.next() // Object {value: 0, done: false}
    f.next() // {value: 1, done: false}
    f.next() // {value: 1, done: false}
    f.next() // {value: 2, done: false}
    f.next() // {value: 3, done: true}
    
    // done: false , 为yield返回; done: true , return返回
    

    阮一峰Generator

    相关文章

      网友评论

          本文标题:ES6引入的新的数据类型

          本文链接:https://www.haomeiwen.com/subject/zfakattx.html