并发 和异步

异步

生成十个随机数,每隔一秒生成一个

setTimeout(() => {

            console.log(Math.random() + '');

          setTimeout(() => {

                console.log(Math.random() + '');

                setTimeout(() => {

                    console.log(Math.random() + '');

                    setTimeout(() => {

                        console.log(Math.random() + '');

                        setTimeout(() => {

                            console.log(Math.random() + '');

                            setTimeout(() => {

                                console.log(Math.random() + '');

                          }, 1000);

                        }, 1000);

                    }, 1000);

                }, 1000);

            }, 1000);

        }, 1000);

这样会陷入死循环,因此被称为 回调地狱

## 异步并发

Promise和async/await 提供异步并发能力

Promise有三种状态:

pending(进行中)

fulfilled(已完成)

rejected(已拒绝,出现错误)

reslove(成功) reject (失败)

加入判定

if语句中使用reslove reject

then用来处理reslove的数据 data成功后返回的数据

则catch表示失败,出现错误回直接停止代码运行

.catch在外部加入属于判断整体

若在中间加入则表示判断某一段落

err=》{

console。log(err)

表示处理失败

如果上个then的异步操作正确那么

接下来的then接受的是上一个return的结果

## 使用异步函数

async function asy() {

            console.log('开始执行异步操作');

            try {

            let num1=await p()

            console.log(num1);

            let num2=await p()

            console.log(num2);

            }catch(err){

                console.log(err);

            }

        }

## arkTs的异步

在arkTs中必须声明函数类型

再用if语句

reslove必须和声明的函数类型对应

而reject不与声明的函数类型有关系

## arkTs的遍历

在arkTs中遍历先导出

然后与Js差异不大

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值