程式設計語言的最根本的特徵之一是一組它支援的資料型別。這些是可被表示和操縱的程式設計語言的值的型別。
JavaScript允許有三個基本資料型別:
數位如. 123, 120.50 等.
字串如 "This text string" 等.
布林型別,如 true 或 false.
的JavaScript還定義了兩種資料型別:null和undefined,其每一個僅限定一個單一的值。
除了這些基本的資料型別,JavaScript支援被稱為物件的複合資料型別。我們會看到在一個單獨的章節介紹物件細節。
註:Java不作整數和浮點值之間的區別。在JavaScript中的所有數位都表示為浮點值。JavaScript表示使用由IEEE 754標準中定義的64位元浮點格式的數位。
像許多其他的程式設計語言,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程式碼中。
區域性變數: 區域性變數將只在那裡它被定義的函式是可見的。函式的引數是區域性的功能。
在一個函式的主體中,區域性變數優先於具有相同名稱的全域性變數。如果宣告具有相同名稱作為一個全域性變數,一個區域性變數或函式引數,可以有效地隱藏全域性變數。下面舉例說明吧:
<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關鍵字作為變數名。這些關鍵字中提到的下一部分。例如,break 或者 boolean 變數名是無效的。
JavaScript變數名不應以數位開始(0-9)。他們必須以字母或下劃線。例如,123test是無效的變數的名稱,但 _123tes t是一個有效的。
JavaScript變數名稱是區分大小寫。例如,Name 和 name 是兩個不同的變數。
以下是在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 |