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>