我有代码,其中我有两个相同名称的变量。 第一个变量是全局的,另一个是函数内部的变量。根据规范,所有全局变量都附加到窗口对象,但是当我试图访问全局变量函数时,它显示在jsfiddle中未定义,但相同的代码在控制台中正常工作。jsfiddle中的全局变量的意外行为
var myVar='10';
function check() {
alert('Local : ' + myVar+ ', Global : ' + window.myVar); //window.myVar is undefined in jsfiddle
var myVar;
}
check();
这种意外行为的原因是什么?
这里是JSFiddle
检查在这里:http://stackoverflow.com/questions/18835396/global-vars-with-jsfiddle –
重复http://stackoverflow.com/questions/4862193/javascript-global-variables – Kasma
以普通方式访问全局变量不要使用window.myVar它应该是myVar。以及你已经定义myvar为一个局部变量,它是未定义的,所以你会得到undefined在本地上下文 –