Javascript 你是怎么做到的';名称';成为一个全局变量?

Javascript 你是怎么做到的';名称';成为一个全局变量?,javascript,global-variables,google-chrome-devtools,Javascript,Global Variables,Google Chrome Devtools,好的,所以我不确定这是否只是Chromes开发者工具的一部分,但是我在玩弄我正在编写的一些代码,我意识到一个变量,意味着是本地的,已经在全局名称空间中创建了一个名为“name”的变量 我删除了这个bug,然后打开Chrome工具以确保bug已经修复。令我惊讶的是,我在控制台中键入“name”,并返回一个空字符串。在仔细阅读了我的代码之后,我意识到这不是我造成的,所以我去了google.com,再试一次。令我惊讶的是,“name”是一个全局变量。环顾四周,在使用开发工具进行查看时,似乎到处都有一

好的,所以我不确定这是否只是Chromes开发者工具的一部分,但是我在玩弄我正在编写的一些代码,我意识到一个变量,意味着是本地的,已经在全局名称空间中创建了一个名为“name”的变量

我删除了这个bug,然后打开Chrome工具以确保bug已经修复。令我惊讶的是,我在控制台中键入“name”,并返回一个空字符串。在仔细阅读了我的代码之后,我意识到这不是我造成的,所以我去了google.com,再试一次。令我惊讶的是,“name”是一个全局变量。环顾四周,在使用开发工具进行查看时,似乎到处都有一个全局变量


我的问题是为什么?

是对象的属性,与
窗口的所有其他成员一样,它可以全局访问

name
相当于
window.name
,通常用于在创建窗口后修改窗口的名称

var myWindow = window.open("","MsgWindow","width=200,height=100");
myWindow.document.write("<p>This window's name is: " + myWindow.name + "</p>");
var myWindow=window.open(“,”MsgWindow“,”宽度=200,高度=100”);
myWindow.document.write(“此窗口的名称为:“+myWindow.name+”

”;
window是一个标准的变量/属性,引用弹出窗口中使用的窗口名称。与任何其他js变量不同,它也会在您更改域时保持其值。它也只能是一个字符串,不同于任何其他js变量…刚刚意识到<代码>对象键(窗口)返回窗口中所有全局变量的数组。很有意思,可以浏览一下。Thanksma有时可能不在IE中-在页面加载名称可以被未定义/重新用于其他内容之前,但在FF/Chrome中已经存在,并且不能更改为其他类型。