变量的作用域分为全局作用域和函数作用域。
定义在任何函数外部的变量是全局作用域变量,在函数内部不使用var 关键字定义的变量也是全局作用域变量,在函数内部使用var关键字定义的变量才是函数作用域变量。
函数作用域变量会覆盖同名的全局作用域变量。
全局作用域变量的可见区域是整个脚本(除了被同名函数作用域变量覆盖的区域),函数作用域变量的可见区域是函数内部(除乐被内部嵌套函数中同名函数作用域变量覆盖的区域)
总结规范:函数内部尽量使用函数作用域变量,不使用全局作用域变量,为了避免混淆,全局作用域变量和函数作用域变量最好不要同名
practice:
<script>
var sName = "我用双手创造明天";
function fnLove(){
var sName = "我用平躺获得明天";
return sName;
}
//document.write(fnLove()+"\n");
document.write(fnLove()+"</br>");
document.write(sName);
</script>
延伸:js中\n并不能实现换行,仅仅为一个空格
只有用</br>才能换行