范围下的“脚本”类别

Hel*_*rld 5 javascript google-chrome-devtools ecmascript-6

我正在 chrome 开发工具中检查一个简单脚本的执行上下文。我注意到在断点或调试器语句上,chrome 开发工具在范围部分显示一个新类别。它有:

  • 当地的
  • 脚本
  • 全球的

let我相信脚本与存储方式有关const,因为它们没有附加到全局窗口对象。然而,我的理解是它们仍然在“全局范围”内,但不绑定到全局对象。

我相信“Script”标签代表了这个想法,但为什么选择“script”这个名字呢?

我检查了文档,但不幸的是,它没有提到“脚本”是什么。

这是我的示例的屏幕截图:

在此输入图像描述

有人对所使用的命名约定有任何见解吗?

小智 1

因为脚本范围内的变量可以在另一个脚本标签(包括外部脚本标签)中访问。

看到这个问题

顺便说一下,Firefox 的开发工具简单地将这样的范围称为“块”。例如:

var a = 0;
let b = 1;
function test() {
  function test2() {
    let c = 2;
  }
  test2();
}
test();
Run Code Online (Sandbox Code Playgroud)

在 Chrome 开发工具中看起来像这样: 在 Chrome 开发工具中 看起来像这样 在 Firefox 开发工具中: 在 Firefox 开发工具中