标签:异步 Vue console log EventLoop 执行 任务 setTimeout 基本概念
图片来自 黑马程序员 免费视频
我们使用这样的代码来验证:
这段代码输出的结果是: A D C B
console.log('A') thenFs.readFile('./files/1.txt','utf8').then(dataStr => { console.log('B') }) setTimeout(()=>{ console.log('C') }, 0) console.log('D')
JavaScript 把异步任务又做了进一步的划分,分为 宏任务、微任务 两类:
宏任务(macrotask)包括:
异步 ajax 请求、setTimeout 、setInterval 、文件操作、其它宏任务
微任务(microtask)包括:
1、Promise.then 、catch 、finally
2、process.nextTick
3、其它微任务
每一个宏任务执行完之后,都会检查是否存在待执行的微任务,如果有,则执行完所有的微任务后,再继续执行下一个宏任务。
标签:异步,Vue,console,log,EventLoop,执行,任务,setTimeout,基本概念 来源: https://www.cnblogs.com/z5337/p/16484797.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。