JavaScript變量和數據類型
JavaScript數據類型:
編程語言的最根本的特征之一是一組它支持的數據類型。這些是可被表示和操縱的編程語言的值的類型。
JavaScript允許有三個基本數據類型:
-
數字如. 123, 120.50 等.
-
字符串如 "This text string" 等.
-
布爾類型,如 true 或 false.
的JavaScript還定義了兩種數據類型:null和undefined,其每一個僅限定一個單一的值。
除了這些基本的數據類型,JavaScript支持被稱為對象的複合數據類型。我們會看到在一個單獨的章節介紹對象細節。
注:Java不作整數和浮點值之間的區彆。在JavaScript中的所有數字都表示為浮點值。JavaScript表示使用由IEEE 754標準中定義的64位浮點格式的數字。
JavaScript變量:
像許多其他的編程語言,JavaScript有變量。變量可以被認為是命名容器。您可以將數據放入這些容器,然後參考該數據簡單地命名容器。
要在JavaScript程序使用一個變量,必須聲明它。變量是用var關鍵字聲明如下:
<script type="text/javascript"> <!-- var money; var name; //--> </script>
還可以用相同的var關鍵字聲明多個變量如下:
<script type="text/javascript"> <!-- var money, name; //--> </script>
存儲在變量中的值被稱為變量的初始化。可以在變量創建或更新的時候初始化,需要一個變量,如下所示:
例如,可以創建一個名為變量money和2000.50值,然後分配給它。對於另外一個變量,可以按如下初始化時分配一個值:
<script type="text/javascript"> <!-- var name = "Ali"; var money; money = 2000.50; //--> </script>
注意:使用var關鍵字隻聲明或初始化。一旦變量名稱聲明它的生命周期在整個文檔中。不需要重新聲明同一個變量兩次。
JavaScript是類型化的語言。這意味著,JavaScript變量可以保存任何數據類型的值。不像許多其他語言,你不必在變量聲明什麼類型的值的變量將持有告訴JavaScript。變量的值類型可以在程序的執行過程中改變以及JavaScript會自動。
JavaScript變量範圍:
一個變量的範圍是程序中定義它的區域。 JavaScript變量將隻有兩個範疇。
-
全局變量: 全局變量具有全局範圍,這意味著它是無處不在於定義JavaScript代碼中。
-
局部變量: 局部變量將隻在那裡它被定義的函數是可見的。函數的參數是局部的功能。
在一個函數的主體中,局部變量優先於具有相同名稱的全局變量。如果聲明具有相同名稱作為一個全局變量,一個局部變量或函數參數,可以有效地隱藏全局變量。下麵舉例說明吧:
<script type="text/javascript"> <!-- var myVar = "global"; // Declare a global variable function checkscope( ) { var myVar = "local"; // Declare a local variable document.write(myVar); } //--> </script>
這將產生以下結果:
local
JavaScript的變量名:
雖然在JavaScript中變量命名保持以下幾點規則。
-
不應該使用任何保留的JavaScript關鍵字作為變量名。這些關鍵字中提到的下一部分。例如,break 或者 boolean 變量名是無效的。
-
JavaScript變量名不應以數字開始(0-9)。他們必須以字母或下劃線。例如,123test是無效的變量的名稱,但 _123tes t是一個有效的。
-
JavaScript變量名稱是區分大小寫。例如,Name 和 name 是兩個不同的變量。
JavaScript的保留字:
以下是在JavaScript中的保留字。它們不能用於如 JavaScript 變量,函數,方法,循環標簽,或任何對象名稱。
abstract boolean break byte case catch char class const continue debugger default delete do double |
else enum export extends false final finally float for function goto if implements import in |
instanceof int interface long native new null package private protected public return short static super |
switch synchronized this throw throws transient true try typeof var void volatile while with |