变量分为本地变量和全局变量两种
我们看下面这个例子:
var myvariable = 'global';myothervariable = 'global';function myfunction(){ var myvariable = 'local'; return myvariable;}function myotherfunction(){ myothervariable = 'local'; return myothervariable;}console.log(myvariable); //{行1} globalconsole.log(myfunction()); //{行2} localconsole.log(myothervariable); //{行3} globalconsole.log(myotherfunction()); //{行4} localconsole.log(myothervariable); //{行5} local
行1输出global,因为他是一个全局变量;
行2输出local,因为myvariable在myfunction函数中声明的本地变量,所以作用域仅在myfunction中;
行3输出global,因为我们在第二行初始化了的全局变量myothervariable;
行4输出local,myotherfunction函数中,没有关键词var的修饰,所以这里引用全局变量myothervariable并将其复制loacl;
在行输出local,这是因为在行4中已经修改了myothervariable的值;
以上就是javascript变量作用域分析(代码示例)的详细内容。
