JavaScript运行机制

JavaScript是单线程的,什么是单线程,单线程就是在同一时刻只能执行一个任务,只有等到这个任务完成时才会执行下一个任务。

什么是任务队列:所有的任务无非就两种,要么是同步任务,要么是异步任务。同步任务指的是在主线程上排队执行的任务,只有在前一个执行完成后才会执行下一个任务。异步任务是不进入主线程,而进入任务队列的任务,某个异步任务可以执行了(setTimeout等待时间结束,事件被触发,请求得到结果),该任务才会进入主线程执行。

一旦主线程上的同步任务被执行完,系统就会自动读取任务队列,等到任务队列里的异步任务到了执行状态,就讲这个任务放入主线程执行。只要主线程空了就会去执行任务队列,这个过程是循环不断的,这种运行机制就称为事件循环(Event Loop).


猜你喜欢

转载自blog.csdn.net/qq_25695065/article/details/79977458