异步的应用场景
- 网络请求,如ajax图片加载
- 定时任务,如setTimeout
网络请求:
打印start、打印end、网络请求的时候,传了一个回调函数。
这时候按照异步的逻辑来分析:
打印start,执行网络请求,执行完网络请求就不管了,因为异步,继续往下执行,打印end,什么时候网络请求回来,什么时候回来就什么时候打印data1,执行回调函数。
图片加载:先执行start,然后定义一个img,img.onload里的onload就是一个callback的一个形式,这是另外一个形式,img.onload赋值成一个回调函数,然后img.src赋值成xxx.png。src一旦赋值之后,图片会触发加载ÿ