JavaScript高级—— js 是单线程运行的
1、如何证明 js 执行时单线程的?
① setTimeout()的回调函数是在主线程执行的
② 定时器回调函数只有在运行栈中的代码全部执行完后才有可能执行
2、为什么 js 要用单线程模式,而不用多线程模式?
① JavaScript 的单线程,与它的用途有关
② 作为浏览器的脚本语言,JavaScript 的主要用途是与用户互动,以及操作 DOM
③ 这决定了它只能是单线程,否则会带来很多复杂的同步问题
3、代码的分类
① 初始化代码
② 回调代码
4、js 引擎执行代码的基本流程
① 先执行初始化代码:包含一些特别的代码,回调函数(异步执行)
设置定时器
绑定监听
发送 ajax 请求
② 后面在某个时刻才会执行回调代码
本文分享到这里,欢迎大家评论区相互讨论学习,下一篇继续分享JavaScript高级学习中的事件循环模型。