“核心JavaScript和客户端JavaScript都有一个单线程执行模型。”这句话应该如何理解

RT,这句话出自《JavaScript权威指南》13.3。

首先,说一下我的理解:

  • 核心JavaScript,指的是ECMAScript所设定的 基本语法和基本对象

  • 客户端JavaScript,指的是与浏览器交互的 方法和接口

那么,在实际的页面解析和执行过程中,这两部分JavaScript各自的单线程执行模型有什么关联吗?他们各自负责哪些具体的工作?



至尊宝的传说
浏览 756回答 1
1回答

胡说叔叔

核心 JavaScript 是指 ECMAScript 262 Specification 中描述的部分,是 JavaScript 语言的核心。客户端 JavaScript,如果理解为与浏览器交互的方法和接口的话,应该是浏览器实现的 ECMAScript 环境(引擎),可能还含有相关的配套库。ECMAScript 中描述了 JavaScript 是单线程的(Spec 中没出现 thread 这个词,应该是通过某种描述限定了其运行方式,全英文没仔细去研究),那么客户端的实现肯定就是单线程的。JS 是通过任务队列的方式来处理需要调用的函数的,所以脚本在执行的时候,即使事件被触发,也只会加到任务队列里等当前脚本(函数)执行完成之后,轮到它的时候才执行。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript