函数内部延迟后面代码执行

1、要求

	async function  delayed (params) {
		//在这里加入一段代码,让后面的打印1,延迟1s执行
		console.log(1)
	};
	
	delayed ()

2、实现

	async function  delayed (params) {
		await new Promise((resolve, reject) => {
			setTimeout(() => {				
					resolve() 
			}, 1000);
		})
		console.log(1)
	};
	
	delayed ()

3、 async/await 讲解

3.1 定义

async await是ES7重要特性之一,是目前公认的异步解决方案。async/await的作用是直接将Promise异步代码变为同步的写法,注意,代码仍然是异步的。

3.2 注意点
	await只能用在async修饰的方法中,但是有async不要求一定有await。
	
	await后面只能跟async方法和promise。

async函数的使用

async函数返回的是一个Promise对象,即最后return的内容会变为then方法的resolve方法的参数,而抛出的错误会被catch方法捕获


	async function asy(){ 
	    return 'i am promise';
	}
	 
	asy().then(val=>console.log(val)) 
	// i am promise
	
	async function asy(){
	    throw new Error('i throw error');
	}
	 
	asy().then().catch(e=>console.log(e))
	 
	// Error: i throw error

await函数的使用

正常情况下,await命令后面是一个Promise对象,若不是Promise对象,则直接返回该值。


	async function asy(){
	    return await 'not promise';
	}
	
	asy().then(val=>console.log(val))
	
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值