简单了解var
下面我會使用幾個小例子簡單說明var的使用方法和含義。
Var變量,要定義變量,可以使用 var 操作符(注意 var 是一個關鍵字),后跟變量名(即標識符)也叫創建JavaScript變量是我們在前端里比較常用的吧,在JavaScript中聲明變量也稱為創建變量,簡單點來說就是聲明一個變量并給它賦值 :var a = 1;這里我把1賦值給了變量a,就在代碼中定義了a的值就是1;我們來看一下控制臺輸出一下a的值看看:
比如a = 1;這里a并沒有聲明變量,只是往它的外層尋找一個變量名為a的變量,并且給它賦值為1.(假設外層沒有聲明為a的變量,那么它就會找到window上為a的變量),但是如果控制臺輸出a的話,它的結果還是1,因為這里a = 1嘛。
???? var聲明還有一個點要注意,因為JavaScript擁有動態類型,也就意味相同的變量也有了不同形態,
上面變量a因為并沒有給它賦值,所以只能是undefined未定義;
變量b,賦值了一個數字1;
變量c,賦值了一個字符串holle,注意用雙引號括起來的是字符串,雙引號不是字符串的一部分,他們只是通知編譯器其中包含了一個字符串,就像字符的單引號一樣,表示著一個字符;看一下控制臺輸出一下:
還有var聲明雖然可以重復,比如聲明兩個變量a,但是代碼中這個處于后面的a就會把前面的a覆蓋掉,所以這點是要注意的。
按照相關規定,保留的關鍵字不能用作標識符或屬性名,就是不能拿它們來定義,常見的有do、in、for、class等等,實在太多了,在這就不一一列舉了,自己上網查。
我們再來看一下var的聲明作用域,這里主要講它的局部變量和全居變量:
先來說說局部變量和全局變量;
- 使用 var 在一個函數內部定義一個變量,可稱為局部變量,可以理解為var聲明變量,在方法內部是局部變量/局部變量只能在指定函數內可見,函數外面是不可見的,也不允許訪問。
- 但是如果不使用var關鍵字定義的變量都是全局變量,不管是在函數內或者函數外,在整個頁面腳本中都是可見的。
它們兩個也有著一個生存期
- 局部變量會在函數運行以后被刪除
- 全局變量會在頁面關閉后被刪除
先看圖:
這里a變量是在函數內被var定義的。函數usi(),調用它會創建這個變量并給它賦值。但是它一旦被調用之后隨即被銷毀刪除掉,所以a已經沒有定義了,也就導致了最后輸出出錯了。
但是如果把圖中var那玩意去掉的話,那么它就變成了全局變量,那么結果就不同了,看圖:
可以看到去掉之前的var操作符之后,就變成了全局變量,只要調用一次usi()這個方法,就會定義這個變量,并且可以在函數外部被訪問到,所以最后輸出就出現了12這個數字。
注意:雖然可以通過省略 var 操作符定義全局變量,但不推薦這么做。在局部作用域中定 義的全局變量很難維護,也會造成困惑。
?
?
?
?
?
?
?
?
總結
 
                            
                        - 上一篇: var是什么
- 下一篇: 金融分析与风险管理——风险价值(VaR)
