generator(异步编程,yield,next(),await,async)

是一个迭代器生成函数,返回值是一个迭代器(Iterator)
可用于异步调用

1.yield相当与ruturn

2.generator 函数时ES6提供的一种异步编程绝决方案,通过 yield 标识与next() 结合使用,实现函数的分段执行
3.next():里面可以就收一个参数 代表上一个yield的参数值的结果

  1. 回调地狱 ::很多个函数嵌套

  2. 异步流控
    异步流控:就是按照顺序控制异步操作,没一步都可以认为一个异步的过程,(每一步完成之后才能继续下一个工序)这就是异步流控

    /////////////////////////////////////////////////////
    1.语法秒速

    2.函数迭代器接口
    3.next()里面可以就收一个参数代表上一个yield的执行结果
    4.使用场景 绝决异步问题 (一般用async await 组合来决绝异步问题)
    描述:generator函数跟普通函数的区别就是比普通函数多个*,主要是再函数里面 定义一个yield 1和yield 2,再函数外面声明一个变量,赋值这个函数,这个变量就是generator函数的迭代器。调用的时候需要再变量后面加.next(),next()里面可以接受一个参数,这个参数代表上个yield执行的结果,这个函数可以随时停,随时运行, 可以解决异步操作的回调地狱和异步流控,但是我通常是使用promise aysnc await组合来解决异步,generator不怎么使用

你可能感兴趣的:(generator(异步编程,yield,next(),await,async))