JS中如何使用async与await
发表于:2025-11-13 作者:千家信息网编辑
千家信息网最后更新 2025年11月13日,小编给大家分享一下JS中如何使用async与await,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、asyncasyn
千家信息网最后更新 2025年11月13日JS中如何使用async与await一、async
二、await:
三、综合应用
小编给大家分享一下JS中如何使用async与await,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
一、async
async创建一个异步函数来定义一个代码块,在其中运行异步代码;
怎样变成异步函数呢?以 async 这个关键字开始,它可以被放置在一个函数前面
async function f() { return 1;} f().then(alert); // 1 //上下结果一样 async function f() { return Promise.resolve(1);} f().then(alert); // 1 //也可以用箭头函数let hello = async () => { return "1" };hello().then((value) => console.log(value))//返回值也可以简化成这样hello().then(console.log)异步函数的特征之一:保证函数的返回值为 promise。
将 async 关键字加到函数申明中,可以告诉它们返回的是 promise,而不是直接返回值。此外,它避免了同步函数为支持使用 await 带来的任何潜在开销。
二、await:
await 只在异步函数里面才起作用。它可以放在任何异步的,关键字 await 让 JavaScript 引擎等待直到 promise 完成并返回结果。在等待promise的同时,其他正在等待执行的代码就有机会执行了。
您可以在调用任何返回Promise的函数时使用 await,包括Web API函数。
async function f() { let promise = new Promise((resolve, reject) => { setTimeout(() => resolve("咚!"), 1000) }); let result = await promise; // 等待执行,直到 promise resolve 执行完 alert(result); // "咚!"} f();//拿到 result 作为结果继续往下执行。所以上面这段代码在1秒后显示 "咚!"。注意:await 实际上会暂停函数的执行,直到 promise 状态变为 完成,然后以 promise 的结果继续执行。这个行为不会耗费任何 CPU 资源,因为 JavaScript 引擎可以同时处理其他任务:执行其他脚本,处理事件等。
三、综合应用
有了async/await就去除了到处都是 .then() 代码块,因为await会等待了。
async function A() { let response = await fetch('c.jpg'); let myBlob = await response.blob(); let objectURL = URL.createObjectURL(myBlob); let image = document.createElement('img'); image.src = objectURL; document.body.appendChild(image);} A().catch(e => { console.log('问题: ' + e.message);});用更少的.then()块来封装代码,同时它看起来很像同步代码,所以它非常直观。这样用的很爽!
以上是"JS中如何使用async与await"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
函数
代码
结果
关键
关键字
同时
篇文章
内容
引擎
同步
处理
直观
上下
不怎么
事件
任务
作用
大部分
实际
实际上
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
幼儿园网络安全知识宣传小结
数据库写出常用的窗体视图
网络安全绿色上网内容
金蝶数据库账套
网络安全信息化建设经费预算
10年没人管理的服务器
开平网络安全找哪家
创建简单数据库的语句
乡镇如何做好网络安全保障工作
维护数据库有哪些
网络安全的主要属性
网络安全专家英文翻译
网络技术发达的国家
kvm管理多台服务器
呼呼代驾软件开发
腾讯云服务器天源迪科
学网络技术从哪里学
厦门做C语言软件开发商
网络安全意识调查问卷感想
金华软件开发定制平台
疫情网络安全员坚守岗位
性价比笔记本电脑软件开发
数据库获取系统日期的函数是
数据库应用技术相关书籍
网络安全管理期中答案
腾讯云服务器是什么网络
网络暴力 网络安全法
安卓用什么软件开发比较好
怎么破解电脑微信数据库文件
分离数据库怎么恢复