60、异步代码
* 简单的代码异步执行机制(并不是详细的,详细的内容后期还会讲)
*
* 这是一道面试题,请熟读并背诵全文
*
* 什么是非异步代码
* 按照从上往下的顺序,从左到右的顺序,依次执行每一行代码
* 如果上一行代码没有执行完毕,不会执行下一行代码
*
* 什么是异步代码
* 当代码遇到异步任务的时候,会把这个代码放在'异步队列'内等待
* 所有的同步代码全都执行完毕之后,在开始执行“异步队列”内的代码
* 简单来说:代码在执行的时候如果遇到异步任务,会先放在‘异步队列’内等着,然后继续往下执行,直到把所有的同步代码执行完毕后,在开始执行异步任务
*
* 什么是异步任务
* 两种定时器都是异步任务
* 可以理解:先执行定时器外面的代码然后执行定时器里边的代码
```js
console.log('开始')
setTimeout(function() {
console.log('倒计时器执行了~~~')
}, 3000)
console.log('结束')
/**
* 运行顺序
* 1.开始
* 2.结束
* 3.倒计时器执行了~~~
* */
```
```js
console.log('1')
setTimeout(function() {
console.log('2')
}, 3000)
console.log('3')
setTimeout(function() {
console.log('4')
}, 4000)
console.log('5')
setTimeout(function() {
console.log('6')
}, 2000)
console.log('7')
// 执行顺序 1 3 5 7 6 2 4
```