JavaScript中的同步和异步

阮一峰的同步,异步解释
“同步模式”就是上一段的模式,后一个任务等待前一个任务结束,然后再执行,程序的执行顺序与任务的排列顺序是一致的、同步地;
“异步模式”任务:每一个任务有一个或多个回调函数,前一个任务结束后不是执行后一个任务,而是执行回调函数,后一个任务不等前一个任务结束执行,程序的执行顺序与任务的排列顺序是不一致的,异步的。

宏任务(macro-task):setTimeout ,setInterval,setImmediate,I/O,rendering
微任务(micro-task):process.nextTrick,Promise,Object.observe,Mutation.Observer

script主程序代码–》process.nextTrick–》Promises…—》setTimeout–》setInterval–》setImmediate–》I/O—>UI rendering
注意:promise构造函数部分代码同步执行,优先级与同步代码相同。