ES6新特性八:async函数用法实例详解-创新互联
本文实例讲述了ES6新特性之async函数用法。分享给大家供大家参考,具体如下:
成都创新互联公司公司2013年成立,先为莎车等服务建站,莎车等地企业,进行企业商务咨询服务。为莎车企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。1. async 函数是什么?
node.js 版本7及之后版本才支持该函数。
可以简单的理解为他是Generator 函数的语法糖,即Generator 函数调用next()
返回的结果。
①Generator
函数需要next() 或执行器进行执行,而async 函数只需和普通函数一样执行。
②async
和await
,比起星号和yield
,语义更清楚了。async表示函数里有异步操作,await表示紧跟在后面的表达式需要等待结果,结果返回才会向下执行。
③ async函数的返回值是 Promise 对象,这比 Generator 函数的返回值是 Iterator 对象方便多了。你可以用then方法指定下一步的操作。
2. async 函数与Generator 函数写法对比
var fs = require('fs'); //读取文件的方法 var readFile = function (fileName) { return new Promise(function (resolve, reject) { fs.readFile(fileName, function(error, data) { if (error) reject(error); resolve(data); }); }); }; var gen = function* () { var f1 = yield readFile('/etc/fstab'); var f2 = yield readFile('/etc/shells'); console.log(f1.toString()); console.log(f2.toString()); }; var asyncReadFile = async function () { var f1 = await readFile('/etc/fstab'); var f2 = await readFile('/etc/shells'); console.log(f1.toString()); console.log(f2.toString()); };
另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
名称栏目:ES6新特性八:async函数用法实例详解-创新互联
浏览路径:http://cdiso.cn/article/hehps.html