继续创造并加速增长!这是我参加“掘金每日计划·六月挑战”的第四天,单击以查看活动的详细信息
大家好!
上次我写了一个诺言极简主义教程。通过Promise..then()方法,他可以编写异步方法,例如同步方法。
生成器函数是ES6提供的异步编程解决方案,也称为构造函数函数。它允许该函数执行功能。函数的功能被悬挂,这提供了更改执行过程的可能性。它也是形式的常见函数。
ES2017引入了异步函数,即发电机函数的语法糖。异步和等待要实现发电机函数的特征,即悬架函数的执行,异步函数变得同步。写作更类似于同步方法,使异步操作更方便。
让我们看一下以下简单同步执行的示例:
示例依次执行的三个功能
在上面的代码中,如果执行了Run()函数,则将按顺序订单调用FunOne(),Funtwo()和Funthree()。
然后,需求就在这里。现在,我们使用jQuery在Funtwo()中模拟执行Ajax异步请求,然后在Run()中看到执行顺序。
我们会发现Funtwo()是一种异步编程。执行同步函数后,它被称为,因此其执行顺序为结束:
但是在开发中,我们是根据功能() - > funtwo()-funtwo()-funthree()的顺序执行的。这是承诺对象和异步和等待同时执行的组合。
首先,使用承诺对象转换Funtwo():
然后,我们将异步放在Run()函数的前面,在Funtwo()面前等待,并告诉程序,Funtwo()执行后结束了
然后,在印刷的泰古肯(Taichung)中,打印的顺序与同步执行的顺序相同,第三个功能可以通过第二个调整函数传递数据。
原始:https://juejin.cn/post/7103036642180644871
