JavaScript 背后的工作原理
💡
原文英文,约400词,阅读约需2分钟。
📝
内容提要
JavaScript在单线程环境中运行,一次执行一个任务。它使用执行上下文(EC)来执行代码,可以是全局的或功能性的。全局执行上下文设置全局对象和变量,而功能执行上下文为每次函数调用创建。JavaScript使用调用栈来管理执行上下文。
🎯
关键要点
- JavaScript在单线程环境中运行,一次执行一个任务。
- JavaScript使用执行上下文(EC)来执行代码,包括全局执行上下文(GEC)和功能执行上下文(FEC)。
- 全局执行上下文在代码文件加载时创建,负责设置全局对象和this关键字。
- 全局作用域中的所有变量和函数存储在全局执行上下文中。
- 执行上下文有两个阶段:内存创建阶段和执行阶段。
- 内存创建阶段分配内存给变量和函数,变量初始值为undefined,函数存储其完整定义。
- 执行阶段逐行执行代码,变量被赋予实际值,函数被执行。
- 每次函数调用时,JavaScript为该函数创建新的执行上下文,包含内存阶段和执行阶段。
- 函数达到return语句时立即退出,执行上下文从调用栈中移除,return后面的代码不会执行。
- JavaScript使用调用栈管理执行上下文,采用后进先出(LIFO)原则。
- JavaScript虽然是单线程的,但可以执行异步操作。
🏷️
标签
➡️