Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/432.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript &引用;脚本“;范围内的类别_Javascript_Ecmascript 6_Google Chrome Devtools - Fatal编程技术网

Javascript &引用;脚本“;范围内的类别

Javascript &引用;脚本“;范围内的类别,javascript,ecmascript-6,google-chrome-devtools,Javascript,Ecmascript 6,Google Chrome Devtools,我正在chrome开发工具中检查一个简单脚本的执行上下文。我注意到在断点或调试器语句中,chrome dev tools在scope部分显示了一个新类别。它有: 本地的 剧本 全球的 我相信脚本与let和const的存储方式有关,因为它们没有附加到全局窗口对象。但是,我的理解是,它们仍然在“全局范围”中,但不绑定到全局对象 我相信“脚本”标签代表了这个想法,但为什么选择“脚本”这个名称呢 我检查了脚本,但不幸的是,它没有提到“脚本”是什么 下面是我的示例的屏幕截图: 有人对使用的命名约定有

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

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

我相信“脚本”标签代表了这个想法,但为什么选择“脚本”这个名称呢

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

下面是我的示例的屏幕截图:


有人对使用的命名约定有什么见解吗?

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

顺便说一句,Firefox的开发工具只是将这样一个作用域称为“块”。 例如:

var a = 0;
let b = 1;
function test() {
  function test2() {
    let c = 2;
  }
  test2();
}
test();
在Chrome devtools中的外观如下: 在Firefox开发工具中如下所示:

似乎唯一能回答“为什么选择“脚本”这个名字”的人是为Chrome开发工具编写PR的人。如果你正在寻找一个人来验证你对它行为的理解,这似乎是一个单独的问题。最好澄清一下您实际期望的答案类型。我认为这是因为该语言区分了(普通)脚本和模块。