async函数对比Generator函数
Posted 谢玉胜的技术文章
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了async函数对比Generator函数相关的知识,希望对你有一定的参考价值。
首先定义一个读取文件的异步函数
var readFile = function(fileName){ return new Promise((resolve,reject)=>{ fs.readFile(filename,(data,data)=>{ if(error) reject(error); resolve(data)l }) }) }
var gen = function* (){ var f1 = yield readFile("./ect") var f2 = yield readFile("./ect2") ; console.log(f1.toString()) console.log(f2.toString()) }
采用async的写法:
var asyncReadFile = async function(){ var f1 = await readFile("./etc"); var f2 = await readFile("./ect2"); console.log(f1.toString()) console.log(f2.toString()) }
可以发现的是 async函数就是将Generator函数的*号改成async 将yiled改成 await而已
以上是关于async函数对比Generator函数的主要内容,如果未能解决你的问题,请参考以下文章
async和Generator是一对好基友,且async是主动型
async(await)函数和 Generator 函数 区别
每天十分钟学好ES6--async和Generator是一对好基友