【学习打卡】第14天 3-17 async函数讲解
2022/8/18 4:22:56
本文主要是介绍【学习打卡】第14天 3-17 async函数讲解,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
课程名称:毕业一课通,从开题到答辩高效完成
课程章节:3-17 async函数讲解
主讲老师:然冬
课程内容:
async函数
await
课程收货:
回调地狱 => promise的链式回调地狱 => async await 的函数请求。
await使用时一定要接async关键字,等一个async函数的promise返回请求。
代码演示:
const Koa = require('koa') const app = new Koa() // const getYearByTimeStamp = require('./helpers/utils/index') // console.log(getYearByTimeStamp(new Date().getTime())) // console.log(utils) // 开启一个http服务 // 接受http请求 并做处理,处理完响应 // https 默认端口 443 // context 上下文 当前请求的相关信息都在里面 app.use(async(context, next) =>{ console.log(1); log(startTime); await next(); console.log(4); log(endTime); }); app.use(async(context, next) =>{ console.log(2); await next(); console.log(5); }); app.use(async(context, next) =>{ console.log(3); await next(); console.log(6); }); app.listen(3000, () =>{ console.log('启动成功') }) console.log('112233')
//async-await // const fn2 = async () =>{ // return 1; // } // console.log(fn()) // fn().then((res) =>{ // return new Promise((resolve,reject) =>{ // resolve(1); // }) // }) // fn().then((res)) // const fn = async function (){ // } // promises // 回调函数 // 一个接口,要拿到数据,跑5个前置接口 // const request = (arg ,cb ) =>{ // setTimeout(() => { // console.log(arg); // cb(arg + 1); // }, 1000); // } // request(1,function(res1){ // request(res1,function(res2){ // request(res2,function(res3){ // request(res3,function(res4){ // request(res4,function(res5){ // // 回调地狱 // console.log('res',res5); // }) // }) // }) // }) // }) const request = (arg,isReject) =>{ return new Promise((resolve, reject) =>{ setTimeout(() => { console.log(arg) if(isReject){ reject('出错了') return; } console.log(arg) resolve(arg+1) }, 1000); }) } // async 函数 返回的是一个promise const fn = async() =>{ const res1 = await request(1); const res2 = await request(res1); const res3 = await request(res2); const res4 = await request(res3); console.log(res4); } fn(); // request(1).then((res1) =>{ // return request(res1); // }) // .then((res2) =>{ // return request(res2); // }) // .then((res3) =>{ // return request(res3) // }) // .then((res4) =>{ // return request(res4) // }) // .then((res5) =>{ // console.log(res5) // });
这篇关于【学习打卡】第14天 3-17 async函数讲解的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23增量更新怎么做?-icode9专业技术文章分享
- 2024-11-23压缩包加密方案有哪些?-icode9专业技术文章分享
- 2024-11-23用shell怎么写一个开机时自动同步远程仓库的代码?-icode9专业技术文章分享
- 2024-11-23webman可以同步自己的仓库吗?-icode9专业技术文章分享
- 2024-11-23在 Webman 中怎么判断是否有某命令进程正在运行?-icode9专业技术文章分享
- 2024-11-23如何重置new Swiper?-icode9专业技术文章分享
- 2024-11-23oss直传有什么好处?-icode9专业技术文章分享
- 2024-11-23如何将oss直传封装成一个组件在其他页面调用时都可以使用?-icode9专业技术文章分享
- 2024-11-23怎么使用laravel 11在代码里获取路由列表?-icode9专业技术文章分享
- 2024-11-22怎么实现ansible playbook 备份代码中命名包含时间戳功能?-icode9专业技术文章分享