javaScript作用域
Javascript 的作用域: 没有块级作用域,只有函数作用域和全局作用域。
特例:
<script>
var a = 1 ;
function getA(){
alert(a); //undefined
var a = 100; 方法内重新定义a,将会覆盖掉全局的同名变量。但由于顺序执行的原因,致使此行只作了声明,未来得及赋值。
alert(a); //100
}
</script>
1、未使用var、let、const关键字声明的变量都是全局变量。
2、全局变量都是window的属性。 例如 x=3; alert(x);和alert(windows.x)效果等同。
3、调用某一个变量,如果这个变量有多个(全局和函数)。那么将会取距离最近的那个(或者说由下至上)。