async
async是Generator的语法糖,实现自动的执行Generator,类似于co模块
使用:
var demo = async function(){ var f2 = await readFile("./ddd") //通常情况下 await后面是一个Promsie对象,但是如果不是就将其转换哼Promise对象。 var f3 = await readFile("./ddd") console.log(f2,f3)
return xxx;//函数内部的返回值就是最后返回Promise中resolvd中的参数 }
demo().then(function(xxx){
}).catch(function(){
//如果函数内部存在错误处理机制,就在函数内部解决,如果函数内部没有,就在当前catch中捕获,如果还是没有,就不抛出,没反应。
})
特点:
1.内置了自动执行器 spawn,不必像genrator一样需要手动执行
2.返回值是Promise对象
3.函数内部的return方法
4.通过for await for遍历同步Iterator接口