JS 中的 Hoisting

拜读Lydia Hallie 的文章有感。遂记录一笔。

当JS引擎获取我们的脚本时,它要做的第一件事就是为代码中的标识符分配内存。 注意此时没有执行任何代码。

  • 函数变量存储的是函数在内存中的引用地址;
  • letconst声明的变量,存储的是<uninitialized>;
  • var声明的变量,存储的是undefined
const、let

var

现在创建阶段已经完成,我们可以执行代码了。在letconst关键字,真正开始声明变量之前的区域,被称为暂时性死区。当我们想要在此区域提前引用对应变量时,会提示ReferenceError

暂时性死区
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容