JavaScript中var的重要作用及详解

JavaScript 中变量可以是数字,字符串,布尔等任何类型。JavaScript 变量要用一个变量名表示,变量名除了不要用数字开头和JavaScript
保留字或者关键字就可以,可以使用英文,数字,$ 和_ 组合。

var介绍-01

一、局部变量

另外, 变量名之前要带 var 来申明变量,否则该变量就是全局变量。用var 申明的变量只可以在函数内部使用。

例如:

var i = 12;
console.log(i)//12
function myfun(){
var i = "我就是我";
console.log(i)//我就是我
}
myfun();

二、全局变量

即使是相同的变量名也不会有冲突,但是如果不用var 就是全局变量了。

例如:

i = 12;
function myfun(){
i = "我就是我";
console.log(i)
}
myfun()//我就是我 
console.log(i)//我就是我 

变量i 已经在函数中被字符串替代。

三、严格模式

这其实是一个JavaScript 设计的缺陷来的,所以后来ECMA推出了strict模式来解决这个问题。在代码的开始部分加入字符串“use strict”,支持strict模式的浏览器就会在严格模式上执行JavaScript代码,强制使用var申明变量,否则就会报错,告诉程序员哪里没有出了问题。未支持strict模式的浏览器就是只是把“use strict”编译成了一句字符串,没有任何意义。不过现在大多数浏览器都支持strict模式。

例如:严格模式下的全局变量不被允许。

"use strict"
i = 12;
function myfun(){
i = "我就是我";
console.log(i)
}
myfun()//我就是我 
console.log(i)//我就是我 
js-var变量-02

四、变量的状态

变量可以区分未静态变量和动态变量。

动态变量是是用var 申明的变量,可以是任意类型的变量,比较灵活。在赋值过程中变量就不断根据所赋值的数据类型变化而变化。

例如:

var a = "hello";
console.log(typeof(a))//string
a = 1212;
console.log(typeof(a))//number
console.log(a)//1212

静态变量的数据类型是已经定好了的,不可变得,如果改变数据类型就会出错。

例如:

int a = 12;
a = "123"

不能把字符串“123”赋值给整形a。

微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?