我正在chrome开发工具中检查简单脚本的执行上下文。我在断点或调试器语句中注意到,chrome dev工具在作用域部分显示了一个新类别。它具有:
我认为脚本与let
和const
的存储方式有关,因为它们未附加到全局窗口对象。但是,我的理解是它们仍然处于“全局范围”内,但不限于全局对象。
我相信“脚本”标签代表了这个想法,但是为什么选择“脚本”这个名称呢?
我检查了documentation,但不幸的是,它没有提到“脚本”是什么。
这是我的示例的屏幕截图:
有人对使用的命名约定有任何见识吗?
答案 0 :(得分:0)
因为可以在另一个脚本标签(包括外部脚本标签)中访问脚本作用域中的变量。
请参见this question。
顺便说一句,Firefox的devtools只是将这种作用域称为“块”。 例如:
var a = 0;
let b = 1;
function test() {
function test2() {
let c = 2;
}
test2();
}
test();
在Chrome devtools中将如下所示: in Chrome devtools 在Firefox devtools中看起来像这样: in Firefox devtools