在js中是没有多线程这个概念的,js只能单线程,那js如何实现多任务呢?这就涉及到了异步
单线程
单线程中执行任务顺序是从上到下 一个一个的执行的, 任务执行完的时间是4个任务执行时间的总和,
异步
当使用异步后,js会创建一个类似异步队列的东西来存储异步任务,当执行到创建异步任务的时候js会将异步任务存放到异步任务队列中,然后跳过这个任务之间执行下一个任务,到同步任务执行到一定的时候js 会从异步任务队列中获取一个异步任务来进行执行,当异步任务执行到一定的时候,js会再将执行权去执行同步任务队列, 两个任务队列不断轮询执行,js执行在不断的反复横跳,这就完成了异步多任务的操作了