js变量定义
var 变量名;
js定义变量时不需要申明具体类型,其类型由赋值的变量决定;
比如var a =12;则a的类型为整型;var a=“则12”,则a为字符串型;
注意:在变量定义时一定要加上var;不然定义的变量将会上升到全局变量,造成逻辑错误(及其致命);
全局变量的定义
顾名思义有及作用于全局的变量,
<script>
var a=12;
</script>
这样就定义了一个全局变量
局部变量
及变量的作用域在一个固定的小范围
比如定义在函数中的变量就是局部变量只作用于函数中
变量提升
机制:范围中定义的变量会自动被提升到内容开头
例:
var x = 5; // 初始化 x
elem = document.getElementById("demo"); // 查找元素
elem.innerHTML = x + " " + y; // 显示 x 和 y
var y = 7; // 初始化 y
实例 2 的 y 输出了 undefined,这是因为变量声明 (var y) 提升了,所以不会报错,但是初始化(y = 7) 并不会提升,所以 y 变量是一个未定义的变量。