<script type="text/javascript">
/**
* 作用域:在嵌套的函数中变量的寻址是由里向外的,当寻址到变量的值就不会继续在往外找。找到window对象时无此属性会报undefined错误
*/
function out(){
var d=5;
function into(){
var e=5;
var d=2
alert(d+e);
}
into();
}
out(); // 输出为7
</script>
+-----------------------------------------------------------------------------------------------------------------------------
<script type="text/javascript">
/**
* var 关键字:只是变量的定义而已,并不代表作用域,未加关键字var的变量只相当于赋值操作.
*/
alert(window.e); // undefined
alert(window.d); // undefined
function t(){
e=5;
var d=6
}
t();
alert(window.e); // 5
alert(window.d); // undefined
</script>
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
<script type="text/javascript">
/**
* 代码的运行方式是自上而下从左至右,从函数里到外
*/
var str1='global';
function t(){
alert(str1);
alert(str2);
str2='aa';
}
t();
output:
global;
undefined;
</script>