3 回答

TA贡献1786条经验 获得超13个赞
局部变量是指只能在本变量声明的函数内部调用。全局变量时整个代码中都可以调用的变量。变量是需要用var关键字声明的。但是javascript中也可以隐式的使用变量,就是不用声明,直接使用。而且,千万注意,javascript把隐式声明的变量总是当成全局变量来使用的。
function myName() {
i = 'yuanjianhang';
}
myName();
function sayName() {
alert(i);
}
sayName();

TA贡献1848条经验 获得超6个赞
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | <html> <head> <script type="text/javascript"> /* 变量的scope是根据方法块来划分的(也就是说以function的一对大括号{ }来划分)
Javascript在执行前(!!!!!!)会对整个脚本文件的声明部分做完整分析(包括局部变量),从而确定实变量的作用域。
当全局变量跟局部变量重名时,局部变量的scope会覆盖掉全局变量的scope,(当离开局部变量的scope后,又重回到全局变量的scope,)
而当全局变量遇上局部变量时,用window.globalVariableName来使用全局变量
*/ </script> <script> var variable = "variable in global"; function show(){
alert(variable); //undefined 因为此时variable为局部变量但是代码执行到此处时未赋值 //alert(window.variable); // variable in global 全局变量 var variable = "variable in local"; //声明并初始化variable alert(variable); // variable in global局部变量 }; </script> </head> <body> <input type="button" onclick="show()"/> </body> <script> </script> </html> |
添加回答
举报