【融职培训】Web前端学习 第3章 JavaScript基础教程20 异步编程

一、同步与异步

异步: 可以多条任务线去执行程序,一条任务卡顿不影响其他任务。

二、回调函数

三、promise对象

在ES2015中新加入了Promise对象,Promise对象用来解决异步问题,关于异步问题,我们会在第8章详细讲解,本章只要概括性地了解Promise对象的语法即可,创建一个Promise对象的语法如下所示:

1 // resolve的作用是把异步获取的数据结果传递出来。
2 let getData = new Promise((resolve) => {
3     let data = "string data";
4     resolve(data);
5 })

Promise构造函数的参数是一个函数,而函数的形参resolve同样也是一个函数,调用resolve可以将数据从promise对象中传递出来。

四、async函数

async函数

async函数与Promise对象结合使用,可以优雅地处理异步问题,声明async函数的语法如下所示:

1 async function fun(){
2     //async函数内部可以使用await关键字
3 }

我们用一个实际的案例来讲解async函数与Promise对象的用法。

在Promise对象的示例中,我们用resolve函数将数据传递出来之后,然后可以用async函数中的await关键字接收数据,完整的实例代码如下所示。

 1 let getData = new Promise((resolve) => {
 2     let data = "string data";
 3     resolve(data);
 4 })
 5 
 6 async function showData(){
 7     let data = await getData;
 8     console.log(data)
 9 }
10 
11 showData();

await后面跟着一个Promise对象,可以获取到Promise对象内部resolve传递出来的数据,这这里需要注意的是:

await关键字必须写在async函数内部。

 

【融职教育】在工作中学习,在学习中工作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值