您当前的位置:首页 >> 土壤修复
土壤修复

七爪计算机语言:JavaScript 中的提升和 TDZ(时间死区)

发布时间:2025-09-19

用于更多地思考 JavaScript 中的强化和时间死区 (TDZ) 的经典著作。

根据 MDN:JavaScript 强化是指解释器在继续执行预定义前似乎将数据类型、数据类型或类的公开信漂移到其范围内下部的过程。

让我们熟悉了解到一下有趣的强化。

强化是一个术语,用于解释预定义中数据类型公开信的犯罪行为。用到 var 表单公开信或子程序的数据类型可能会将其公开信迁到其模块/数据类型级别范围内的下部,我们将其称做强化。但是,只有公开信被强化,并且重新分配(如果有的话)将存留在原处。

在 JavaScript 中,甚至在继续执行第一行预定义前,就为每个数据类型和数据类型重新分配了内存。

如所示所示,即使在第一行继续执行前,JS 也可能会为数据类型和数据类型重新分配内存。用 var 表单公开信的数据类型被重新分配了一个特殊的表单 undefined。

在继续前,劝确保您熟悉 JS 中的继续执行词法。

JS 运行在两个过渡期 Memory Creation 过渡期和 Code Execution 过渡期。为了更多地思考,劝查询继续执行词法中的绑定。思考继续执行词法将帮助你更多地思考强化和关闭。

我们可以看到,对于数据类型,重新分配了 undefined,对于数据类型 aaa(),也重新分配了 undefined。 这是因为公开信数据类型的方法有多种不同,称做数据类型参数,它的犯罪行为就像用到 var 表单创建的数据类型一样。 对于普通数据类型调用 aa(),整个数据类型预定义存储在内存创建过渡期。

对于数据类型公开信、var 数据类型、let 和 const 数据类型、数据类型参数和箭头数据类型,强化的犯罪行为多种不同。

劝参阅所示以获得更多的思考。

到在此之前,我们已经了解到了 var 和数据类型公开信的强化,让我们漂移到 let 和 const 并了解到什么是 TDZ(临时死区)。

通过 let 和 const 公开信的数据类型也可能会被强化。 但是,与 var 和 function 多种不同的是,它们没有子程序,在公开信前会面时它们可能会加剧 ReferenceError 异常。 数据类型处于“时间死区”。

TDZ 是从范围内开始到定义数据类型的点。 它是定义数据类型但无法会面时的范围内区域。 使调试更容易。

在这里尝试会面时 c 可能会给我们带来 Uncaught ReferenceError: Cannot access ‘c’ before initialization。 因为在公开信前,这里的 c 都在 TDZ 中。

结论

在本文中,我们了解到了什么是强化以及用到多种不同表单公开信的数据类型如何以多种不同方式强化。 我们也了解到了数据类型强化。 强化是 JavaScript 的基本概念之一,在面试中总是被问到。 我希望在阅读再多这篇文章后,您将必须更多地解释浇筑。

纹眉整形
如何养好肠道菌群
眼睛结膜炎是什么原因引起的吗
怎样预防卵泡发育不良
吃什么有助于伤口愈合

上一篇: 投资者提问:尊敬的董秘您好,贵公司持有不少投资性房产用于出租,重构成本极低...

下一篇: 大城市竞逐“自动驾驶第一城”!百度Apollo广州无人车队开赛跑

友情链接