天天看點

JS--JavaScript變量詳解(全局變量、局部變量)

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>
           
JS--JavaScript變量詳解(全局變量、局部變量)

繼續閱讀