js 执行顺序
// javascript是一门单线程语言 async function async1() { // async关键字 申明这个function是异步的 console.log('async1 start') // 2 await async2(); //看到了await关键字 它前面的所有代码块执行完以后 才会执行下面的代码 console.log('async1 end') // async 函数返回一个 Promise对象 异步挂起 放到 "任务队列" 5 } async function async2() { console.log('async2')// 3 } console.log('script start') // 第一个同步任务 首先执行完毕 1 setTimeout(function () { console.log('setTimeout')// setTimeout()在主线程最早可得的空闲时间执行,也就是说,同步任务和"任务队列"处理完以后才轮到它。它在"任务队列"的尾部添加一个事件 放到最后 7 }, 0) async1() console.log('12222222221') new Promise(function (resolve) { //传参是个 同步任务 4 console.log('promise1') resolve() }).then(function () { console.log('promise2') // then方法会返回一个新的promise 异步挂起 放到 "任务队列" 6 }) // 下面没有代码了 js开始按顺序执行刚才放到"任务队列"里的代码块
参考地址:https://www.cnblogs.com/zwnsyw/p/12772668.html
君不见,高堂明镜悲白发,朝如青丝暮成雪
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现