关于变量的作用域问题1

1.

var x=10;//全局变量
function outer(){
var x=20;//局部变量
function innter(){
var x=30;//局部变量
alert(x);//3.弹出innter()的局部变量x=30;
}
innter();//2.执行函数innter()
alert(x);//4.弹出outer()的局部变量x=20;
}
outer();//1、执行函数outer();
alert(x);//5.弹出全局变量x=10;
//结果:30 20 10

2、网易经典面试题:
var t='abc';//全局变量
function test(){
alert(t);//2、弹出test()的局部变量t(t提前声明,但没赋值,所以t是undefined);
var t='b';//局部变量
alert(t);//3、弹出test()的局部变量t(t已经赋值,所以 t='b');
}
test();//1、执行函数 test();
//结果:undefined b

原文地址:https://www.cnblogs.com/paulirish/p/5768219.html