异步的应用场景

异步的应用场景

  1. 网络请求,如ajax图片加载
  2. 定时任务,如setTimeout

网络请求:
在这里插入图片描述
打印start、打印end、网络请求的时候,传了一个回调函数。
这时候按照异步的逻辑来分析:
打印start,执行网络请求,执行完网络请求就不管了,因为异步,继续往下执行,打印end,什么时候网络请求回来,什么时候回来就什么时候打印data1,执行回调函数。
在这里插入图片描述
图片加载:先执行start,然后定义一个img,img.onload里的onload就是一个callback的一个形式,这是另外一个形式,img.onload赋值成一个回调函数,然后img.src赋值成xxx.png。src一旦赋值之后,图片会触发加载,加载完成之后,它这个过程中,我们就先不管了,先打印end。等图片加载完成之后,我们再去触发onload事件,这个回调函数,打印loaded

定时任务:

在这里插入图片描述
setInterval:也是定时器,但是它不是一次性的,它是一个循环的一种执行方式,所以说这也是一个异步。

核心代码演示:

//同步
console.log(100)
setInterval(function () {
    console.log(200)
},1000)
console.log(300)

效果:200一直循环打印
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43352901/article/details/107554775