什么是JavaScript单线程?什么是同步任务和异步任务?

共 458字,需浏览 1分钟

 ·

2026-06-15 20:44

一、JS 单线程理解

JS 是单线程语言,同一时间只做一件事,只有一条主线程负责解析、执行代码。设计初衷是为了适配浏览器DOM操作,避免多线程同时操作DOM造成渲染冲突。缺点是单线程会遇到耗时任务阻塞代码执行,所以JS引入了同步、异步任务机制解决阻塞问题。

二、同步任务

定义:进入执行栈后,**必须依次、串行执行完毕**,再执行下一个任务。

特点:阻塞执行、顺序固定、耗时短。

举例:变量声明、循环、判断、普通函数调用等基础代码。

三、异步任务

定义:耗时任务不会阻塞主线程,会**先移出执行栈**,交由浏览器后台处理,等待触发条件满足后,再回调执行。

特点:非阻塞、不卡顿主线程、滞后执行。

举例:定时器、AJAX请求、DOM事件、Promise、async/await。

四、执行顺序核心规则

主线程优先执行所有同步任务,同步任务清空执行栈后,再读取执行就绪的异步回调任务,以此实现非阻塞的单线程运行机制。

五、总结

JS 单线程保证DOM操作安全,同步任务串行阻塞执行,异步任务后台等待、滞后回调执行,二者配合解决了单线程的阻塞痛点。


浏览 1
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报