JavaScript变量
JavaScript使用var关键字声明变量。声明变量的5种常规用法如下:
var a; //声明单个变量。var关键字与变量名之间以空格分隔
var b, c; //声明多个变量。变量之间以逗号分隔
var d = 1; //声明并初始化变量。等号左侧是变量名,等号右侧是值
var e = 2, f = 3; //声明并初始化多个变量。以逗号分隔多个变量
var e = f = 3; //声明并初始化多个变量,且定义变量的值相同
JavaScript也支持不使用var命令,直接使用未声明的变量。但建议用户养成“先声明后使用”的良好习惯。
声明变量之后,在没有初始化之前,则它的初始值未undefined(未定义的值)。
变量的命名规则如下:*
- 首字符必须是大写或小写的字母、下划线(_)或美元符($),后续的字符可以是字母、数字、下划线或美元符。
- 变量名称不能是JavaScript关键字或保留字。
- 变量名称长度任意,但要区分大小写。
除了上面的硬约束之外,用户还应遵循下面软约束,这将会使用户受益终身。
- 变量声明应集中、置顶,如文档的前面、代码的前面,或者函数内的上面。
- 使用局部变量。不要把所有变量都放置在段首,如果仅在函数内使用,建议在函数内声明。
- 变量名应易于理解。
- 避免混乱。声明变量之前,应该规划好,避免类似usrname与usrName混用现象。
根据可见性,变量可以分为全局变量和局部变量(或称私有变量)
- 全局变量在整个页面中可见,并在页面任何位置被允许访问。
- 局部变量只能在指定函数内可见,函数外面是不可见的,也不允许访问。
在函数内部使用var关键字声明的变量就是私有变量,该变量的作用域仅限于当前函数体内。
但是如果不使用var关键字定义的变量都是全局变量,不管是在函数内或者函数外,在整个页面脚本中都是可见的。
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script>
var a = "a(域外) = 全局变量<br/>"; //声明全局变量a
var b = "b(域外) = 全局变量<br/>"; //声明全局变量b
function f(){
var a = "a(域内) = 域内变量<br/>";//声明局部变量a
b = "b(域内) = 域内变量<br/>";//重写全局变量a的值
document.write(a);//输出变量a的值
document.write(b);//输出变量b的值
}
f();//调用函数
document.write(a);//输出变量a的值
document.write(b);//输出变量b的值
</script>
</head>
<body>
</body>
</html>