Async/Await 原理分析
来源:互联网 发布:unity3d微信群 编辑:程序博客网 时间:2024/06/05 04:18
一.Async, Await机制总结
- async/await是写异步代码的新方式,以前的方法有回调函数和Promise。
- async/await是基于Promise实现的,它不能用于普通的回调函数。
- async/await与Promise一样,是非阻塞的。
- async/await使得异步代码看起来像同步代码,这正是它的魔力所在。
$ sudo npm install babel-plugin-async-to-promises -g $ babel --plugins async-to-promises async_test.js
2. async/await转换代码对比
function getConstant() { return 1}async function getAsyncConstant() { return 1}async function getPromise() { return new Promise((resolved, rejected)=> { resolved(1) });}async function test() { a = 2 c = 1 await getConstant(); d = 3 await getPromise(); d = 4 await getAsyncConstant(); return 2}
function getConstant() { return 1;}function getAsyncConstant() { return Promise.resolve().then(function () { return 1; });}function getPromise() { return Promise.resolve().then(function () { return new Promise((resolved, rejected) => { resolved(1); }); });}function test() { return Promise.resolve().then(function () { a = 2; c = 1; return getConstant(); }).then(function () { d = 3; return getPromise(); }).then(function () { d = 4; return getAsyncConstant(); }).then(function () { return 2; });}
从上可知, 所有带async function 的都会主动生成Promise, await会主动生成then
阅读全文
0 0
- Async/Await 原理分析
- async 和 await 实现原理
- Async和Await异步编程的原理
- C# Async/Await异步函数原理
- Async和Await异步编程的原理
- async await 编译后代码分析
- await-async
- async await
- async/await
- async&await
- Async/Await
- async/await
- async/await
- async/await
- async/await
- async/await
- async/await
- async/await
- O2O上门实战复盘:10万元如何换来937个订单?
- 不聊奶茶妹,咱就聊聊京东2016年校招那些事儿
- ECMAscript6快速入门-set和map
- 如何快速学习产品?实践才是王道!同为小白的人儿加油!
- C++注释规范
- Async/Await 原理分析
- spring boot访问静态资源
- 如眸导航--一个专注提供个性化与分享高质量的导航网址,一个属于任何人的的开放导航网站.
- 用 FFMPEG 合并 MP4 视频
- iCheck插件的全选、反选、获取值操作
- 产品经理该不该强势
- 产品经理真的是「背锅侠」吗?
- 被1.5W用户吐成翔的10大互联网产品,你躺枪了吗?
- linux网卡绑定bond探析