1. 程式人生 > >javascript中的變數與作用域

javascript中的變數與作用域

在說變數作用域之前先了解以下幾個概念

塊級作用域:在其他語言中,任何一對花括號內的語句都屬於一個塊,在這個塊中定義的所有變數在程式碼外部都是不可見的,但是在js中,外部可以訪問

{
   var age=12;
				
}
  console.log(age); //控制檯輸出12

全域性變數:定義在script標籤中或者不屬於某個函式的變數,在任何地方都可以訪問的變數

var name="javascript";

//在全域性中使用變數name
console.log(name) //控制檯輸出javascript

//在函式中使用變數name		
function show (){
	return name;
}
console.log(show()); //控制檯輸出javascript

區域性變數:僅僅在當前作用域可以訪問,在其他地方無法訪問

	function add(a,b){
		var sex="nan";
		var sum=0;
		sum=a+b;
		return sum;
				
	}
	console.log(add(4,5)); //9
//	console.log(sex);//顯示sex not defined

js中全域性和區域性的概念僅僅體現在函式中,事實上js中沒有嚴格的區域性和全域性的概念

  •      注意事項:
  •      函式內部可以訪問到該函式所屬的外部作用域的變數(作用域鏈)
  •      不使用var宣告的變數是全域性變數,不推薦使用
  •      變數退出作用域後會銷燬,全域性變數關閉網頁或者瀏覽器後才會銷燬