async await promise结合案例之延时显示数据

本文介绍了如何使用async和await关键字优雅地处理延时操作。通过一个具体的例子展示了async函数返回Promise,await用于等待Promise解决,并确保代码按预期顺序执行。在主线程中,使用这两个关键字可以实现延时效果,例如在每次循环中等待特定时间后再继续执行。
摘要由CSDN通过智能技术生成

优美的进行延时处理
举一反三将会有更好的用法

<script>
	//要延时加载的数据
	const bb = [{age:10},{age:11},{age:12}];
	//定义一个async函数返回一个Promise
	async function cc(){
		return new Promise((resolve,reject)=>{
			//使用定时器进行延时发送通知
			setTimeout(()=>{
				resolve();
			},1500)
		})
	}
	//定义
	async function dd(){
		for(const ee of bb){
			//【重点】这里会等待cc函数中的Promise发送了通知才会往下执行
			await cc();
			console.log(ee.age);
		}
	}
	//调用
	dd();
</script>

在这里插入图片描述
主线程中的代码只有调用dd函数,执行dd函数会进入循环,而从第一次循环中开始就要等待cc函数返回一个结果,否则不往下执行。而cc函数中,要等待1500毫秒才会发送一个通知结果。所以每循环一次就要等待1.5秒返回通知结果,就有了后面的延时效果

async关键字:

放置在一个函数前面,函数前面的async意味着这个函数将return一个Promise。
如果return的不是Promise,js会自动把return的值包装为Promise中resolve的值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

胖达不胖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值