前端-异步编程

javaScript 的异步

JS是单线程,代码是从上往下依次执行的视频地址

异步编程

  • 同步模式与异步模式
  • 异步编程的几种方式
  • promise 异步方案
  • Async/Await
    同步执行过程:代码从上往下依次进栈出栈。直至调用栈被清空,整个代码运行结束。
    调用栈,函数是调用执行的。入栈出栈的形式
    异步执行模式:
    Event loop(事件轮询)
    当全局调用栈空了以后,就会去队列里面找有没有任务需要执行,如果此时队列里面有任务,紧接着该任务会入调用栈执行,执行,并出栈。

等待当前本轮任务全部执行完毕,Event loop 才回去执行。就算事件到了,也需要在消息队列中等待执行。

关键点:我们在上下环境执行时,需要我们异步产生的结果。
异步任务的结果需要在本轮任务执行。

回调函数:异步结果解决方案

函数的调用需要回到函数声明的地方;回调函数,在异步执行我执行的函数。

promise

状态:

  • pending
  • fufiiled
  • rejected

Async/Await:Generator 语法糖

 finction* foo(){
 console.log('test1')
 }
const gener = foo()
const yeild  =  genner.next();

正常函数调用就用了,但是gennerator 是一个生成器,不会立马执行。生成器对象有一个方法,next();当调用next()
时才会执行里面的代码。
yeild 关键字。一次next就执行到yeild关键字。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值