个人理解,方便记忆
js单线程,自上而下执行
先走一遍主代码块,遇到谁调用先执行谁,特殊(遇到setInterval,setTimeout直接放最后执行),(遇到promise,async和await内部内容直接执行,但promise的then和catch以及async的await后的内容第二波一波带走,谁的主任务在前,谁优先执行)
举个例子:
setInterval(()=>{ 001 console.log('001') 1 }) 2 setTimeout(()=>{ 3 4(resolve)/5(reject) 002 console.log(002) 6 }) 7 8 new Promise((resolve,reject)=>{ 1 console.log('1') resolve() 顺序:左边 1,2,3,6,7,10,4,8,001,002,001... console.log('2') reject() console.log('3') }).then(()=>{ console.log('4') }).catch(()=>{ console.log('5') }) aa() async funtion aa(){ console.log('6') await console.log('7') console.log('8') } function bb(){ console.log('10') }
bb()
纸上学来终觉浅,绝知此事要躬行
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!