es6中 , await用于等待一个promise的异步请求 , 异步操作完成后恢复async函数的执行 , 该关键字只能在“async function”中使用 , 语法为“async function(){await=返回promise的异步请求}” 。
![es6的await用法是什么](http://img.zhejianglong.com/220407/060F33621-0.jpg)
文章插图
本教程操作环境:windows10系统、ECMAScript 6.0版、Dell G3电脑 。
es6的await用法是什么语法为:
async function(){await=返回promise的异步请求}await 是个运算符 , 用于组成表达式 , await 表达式的运算结果取决于它等的东西 。 如果它等待的是一个 Promise 对象 , 等 Promise 对象 resolve , 然后得到 resolve 的值 , 作为 await 表达式的运算结果 。 sync 函数调用不会造成阻塞 , 它内部所有的阻塞都被封装在一个 Promise 对象中异步执行 。
async 函数中可能会有 await 表达式 , async 函数执行时 , 如果遇到 await 就会先暂停执行 , 等到触发的异步操作完成后 , 恢复 async 函数的执行并返回解析值 。
await 关键字仅在 async function 中有效 。 如果在 async function 函数体外使用 await , 你只会得到一个语法错误 。
返回值
返回 Promise 对象的处理结果 。 如果等待的不是 Promise 对象 , 则返回该值本身 。
如果一个 Promise 被传递给一个 await 操作符 , await 将等待 Promise 正常处理完成并返回其处理结果 。
示例如下:
function testAwait (x) { return new Promise(resolve => { setTimeout(() => { resolve(x); }, 2000); });} async function helloAsync() { var x = await testAwait ("hello world"); console.log(x); }helloAsync ();// hello world正常情况下 , await 命令后面是一个 Promise 对象 , 它也可以跟其他值 , 如字符串 , 布尔值 , 数值以及普通函数 。
![es6的await用法是什么](http://img.zhejianglong.com/220407/060F36354-1.png)
文章插图
【相关推荐:javascript视频教程、web前端】
以上就是es6的await用法是什么的详细内容 , 更多请关注电脑自学网其它相关文章!
【es6的await用法是什么】
推荐阅读
- javascript中const的含义是什么
- 深入了解JavaScript的内存与性能问题
- es6中promise对象的状态有哪些
- 浅析node中的常用模块:path模块和fs模块
- 带你学习JavaScript中的File API、Streams API和Web Cryptography API
- 完全掌握JavaScript之DOM与BOM的区别与用法
- map在jquery中的用法是什么
- 分享10个纯 CSS 实现的 Loading 效果
- 聊聊各种可能导致 Node.js 进程退出的情况
- 浅析Node中Express的错误处理中间件