一、數據類型
(1)數值型
數字(number)是最基本的數據類型。JavaScript和其他程序設計語言(如C和Java)的不同之處在於它並不區分整型數值和浮點型數值。在JavaScript中,所有數字都是數值型。 JavaScript采用IEEE754標准定義的64位浮點格式表示數字,這意味着它能表示的最大值是+-1、7976931348623157x10最小值是±5x10~32。當一個數字直接出現在JavaScript程序中時,我們稱它為數值直接量。JavaScript支持的數值直接量主要包括整型數據、十六進制和八進制、浮點型數據,例如:整型數據:123 十六進制:0x5C 八進制:023 浮點型數據:3.14(即小數)
(2)字符串型
字符率(string)是由Unicode字符、數字、標點符號等組成的序列,它是JavaScript用來表示文本的數據類型。程序中的字符率型數據包含在單引號或雙引號中,由單引號定界的字符串中可以包含雙引號,由雙引號定界的字符串中也可以包含單引號。具體示例如下:
- 單引號括起來的一個或多個字符,例如:‘啊’ ‘冬天來了’
- 雙引號括起來的一個或多個字符,例如:“我要學習JavaScript”
- 單引號定界的字符串中可以包含雙引號,例如:'name="myname"'
- 雙引號定界的字符串中可以包含單引號,例如:"You can call me'Tom'!"
(3)布爾型
數值型數據類型和字符串型數據類型的值有無窮多個,但布爾型數據類型只有兩個值,分別由“true”和“false”表示。一個布爾值代表一個“真值”,它說明某個事物是真還是假。
在JavaScript程序中,布爾值通常用來比較所得的結果。例如:
n==1
這行代碼測試了變量n的值是否和數值1相等。如果相等,比較的結果就是布爾值true, 否則結果就是false。
布爾值通常用於JavaScript的控制結構,例如,JavaScript的if...else語句就是在布爾值為true時執行一個動作,而在布爾值為false時執行另一個動作。例如:
if(n==1) m=n+1; else n=n+1;
上述代碼檢測了n是否等於1。如果相等,則m=n+1,否則n=n+1。
(4)特殊數據類型
除了上面介紹的幾種數據類型,
avaScript還包括一些特殊類型的數據,如轉義符、未定義值等。
- 轉義符:以反斜杠開頭的,不可顯示的特殊字符通常被稱為控制字符,也被稱為轉義字符。
- 未定義值:未定義類型的變量是undefined,表示變量還沒有被賦值,或者被賦予了一個不存在的屬性值(如var a=String.notProperty;)
- 空值(null):關鍵字null是一個特殊的值,它表示空值,用於定義空的或不存在的引用。
二、條件語句
(1)if條件語句
if條件語句是最基本、最常用的條件控制語句,通過判斷條件表達式的值為true或者false,來確定是否執行某一條語句。主要包括單向判斷語句、雙向判斷語句和多項判斷語句。
- 單向判斷語句:單向判斷語句是結構最簡單的條件語句,如果程序中存在絕對不執行某些指令的情況,就可以使用單向判斷語句,其語法格式如下:
if(執行條件){ 執行語句 }
- 雙向條件語句:雙向判斷語句是if條件語句的基礎形式,只是在單項判斷語句基礎上增加了一個從句,其基本語法格式如下:
if(執行條件){ 執行語句1 }else{ 執行語句2 }
- 多項判斷語句:多項判斷語句可以先根據表達式的結果判斷一個條件,然后根據返回值做出進一步判斷,其基本語法格式如下:
if(執行條件1){ 執行語句1 }else if(執行條件2){ 執行語句2 } else if(執行條件3){ 執行語句3 }
(2)switch語句
switch條件語句是典型的多路分支語句,其作用與if語句類似,但switch條件語句比if語句更具有可讀性。基本語法格式如下:
switch(表達式){ case 目標值1: 執行語句 1 break; case 目標值2: 執行語句2 break; case 目標值n: 執行語句n break; default: 執行語句 n+1 break;
在上面的語法結構中,switch語句將表達式的值與每個case中的目標值進行匹配,如果找到了匹配的值,會執行對應case后的執行語句,如果沒找到任何配的值,就會執行default后的執行語句。