Javascript中promise,async和await的区别是什么
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本文小编为大家详细介绍"Javascript中promise,async和await的区别是什么",内容详细,步骤清晰,细节处理妥当,希望这篇"Javascript中promise,async和awa
千家信息网最后更新 2026年11月02日Javascript中promise,async和await的区别是什么
本文小编为大家详细介绍"Javascript中promise,async和await的区别是什么",内容详细,步骤清晰,细节处理妥当,希望这篇"Javascript中promise,async和await的区别是什么"文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
终于把promise, async, await的区别和联系弄清楚了,看下面代码
写法1,2是promise的写法
写法6是async和await的写法
主要看第2种写法和第6中写法即可, 第2种写法是promise的典型写法,第6中写法是async, await的典型写法
// 以下三个请求依次执行req1 = () => { return fetch("http://example.com/api/v1/get")}req2 = () => { return fetch("http://example.com/api/v1/post")}req3 = () => { return fetch("http://example.com/api/v1/delete")}//写法1req1().then(res=>{ console.log("1: ",res) req2().then(res =>{ console.log("2: ",res) req3().then(res =>{ console.log("3: ",res) }) })})// 写法2req1().then(res =>{ console.log("1: ", res) return req2()}).then(res =>{ console.log("2: ", res) return req3()}).then(res =>{ console.log("3: ", res)})// 写法3function f1(){ req1() req2() req3()}// 写法4async function f2(){ await req1 await req2 await req3}// 写法5async function f3(){ req1().then(res => { console.log("1:", res) }) await f3_1()}async function f3_1(){ req1().then(res => { console.log("2:", res) }) await f3_2()}async function f3_2(){ req2().then(res=>{ console.log("3: ",res) })}// 写法6ff()async function ff(){ await req1_good()}async function req1_good(){ fetch("http://example.com/api/v1/get").then(res =>{ console.log("1: ",res) }) await req2_good()}async function req2_good() { fetch("http://example.com/api/v1/post").then(res =>{ console.log("2: ",res) }) await req3_good()}async function req3_good() { fetch("http://example.com/api/v1/delete").then(res => { console.log("3: ",res) })}最外层的async函数调用之后立即返回了,但是async还是里面还是在逐层执行
await的作用是等待其修饰的函数内部的所有await函数都执行完毕,
从最外层启动一个async函数相当于go一个协程,await func 也相当于go 一个协程,不同在于await = go + waitgroup
await比promise高明的地方在于,promise在then里面调用另一个promise时,不得不return另一个promise再then, 或者在then中回调,但是await完全不需要
async是为了异步,await是为了异步+阻塞,缺一不可
读到这里,这篇"Javascript中promise,async和await的区别是什么"文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注行业资讯频道。
写法
函数
文章
典型
内容
外层
还是
不同
妥当
缺一不可
三个
代码
作用
地方
思路
新知
更多
步骤
知识
知识点
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
科技股互联网
中国互联网科技股
互联网品科技
金融科技创新监管互联网金融
喔噻互联网科技
唐信互联网科技
百单互联网科技有限公司
奇酷互联网络科技公司
米客互联网科技
中正互联网科技招聘
互联网科技教育视频
彤创互联网科技有限公司
互联网媒体平台算高科技产业
消费医药和互联网科技
深圳市罗太互联网科技有限公司
互联网科技资金流入
东营紫格互联网科技
互联网界的黑科技
互联网公司属于科技吗
科技美学互联网 艺术
湖南永感互联网科技有限公司
北京路客互联网科技有限公司
互联网科技保险
世界互联网领先科技成果
互联网前沿科技
中国最先进互联网科技公司
须眉科技是互联网公司吗
互联网科技和信息
西安小鹰速贷互联网科技有限公司
中和天地互联网科技有限公司