【发布时间】:2020-04-06 13:49:40
【问题描述】:
我一直在阅读 Javascript 的内部结构(在 chrome 浏览器的上下文中),我有几个问题似乎无法找到正确的答案。
据我了解:
核心 Javascript(根据 ECMA 规范)包含在 V8 中 引擎。
settimeout等函数由浏览器的 Web API 提供。V8 引擎包括一个调用堆栈和任何要被 执行被推到这个堆栈上。
然后通过 Web API 调用非标准函数。
这些在完成时被推送到回调队列。
一旦堆栈为空,回调队列中的任何内容都会被推送 通过事件循环到堆栈上。
我的问题是当 V8 引擎解释 Javascript 代码时,它如何知道特定函数来自 Web API? Web API 是如何与引擎实际链接的?
【问题讨论】:
-
这是一个很大的问题。考虑将其拆分为小问题?
标签: javascript node.js google-chrome v8