事件循环机制:
因为JavaScript引擎是单线程,也就是说每次只能执行一项任务,其他任务都得按照顺序排队等待被执行,只有当前的任务执行完成才会执行下一个任务
它的任务类型时有两种类型:一种是同步任务(同步线程);一种是异步任务(异步线程),异步任务永远在同步任务执行完毕后才执行
事件循环(Event loop):
同步任务和异步任务进入的“场所”执行;同步任务进入主线程,异步任务进入Event Table并注册回调函数;
当指定的任务完成时,Event Table会将这个函数移入任务队列(teask quene),等待主线程的任务执行完毕;
当栈中的代码执行完毕,执行栈(call stask)中的任务为空时,就会读取任务队列(task quene)任务,去执行对应的回调;
如此循环,就形成js的事件循环机制(Event Loop)