簡單數據類型
| 簡單數據類型 | 取值 |
| Undefined | undefined(只有一個值) |
| Null | null(只有一個值) |
| Boolean | true|false(只有兩個值) |
| Number | 數值 |
| String | 字符串 |
首先需要說明的是,在ECMAScript中,上述5種簡單數據類型,其中Boolean、Number、String都有同名的內置包裝對象,而簡單數據類型的字面值(變量)會根據情況自動包箱,從而可以直接調用方法,至于具體可以調用哪些方法,在討論內置對象時再詳細說明:
代碼如下:
console.info(true.toString());//true,相當于使用Boolean()包裝之后再調用
console.info(Boolean(false).toString());//false,將false轉換為Boolean類型值
console.info(new Boolean(false).toString());//false,將false使用Boolean()包裝
console.info(false.toString());//false,相當于使用Boolean()包裝之后再調用
console.info('test'.toString());//test,相當于使用String()包裝之后再調用
try{
console.info(undefined.toString());//沒有相應包裝類型,拋出異常
}catch(e){
console.info(e);//TypeError
}
try{
console.info(null.toString());//沒有相應包裝類型,拋出異常
}catch(e){
console.info(e);//TypeError
}
var num = 4;
console.info(num.toString());//4,可以直接在簡單數值變量上調用方法,相當于使用Number()包裝之后再調用
//console.info(3.toString());//SyntaxError,語法錯誤不能使用try捕獲,說明不能直接在數值字面量上調用
其次說一下實際用的最多的數據轉換:
?。?)轉換為Boolean:!!value
?。?)轉換為Number:+value
?。?)轉換為String:''+value
下面再具體說明5種簡單數據類型:
1、Undefined類型
Undefined數據類型只有一個取值:undefined。
(1)所有未初始化的值都默認為undefined(也就沒有必要把一個變量顯示初始化為undefined了)。
(2)在函數作用域中,沒有傳入實際參數的函數形參為undefined。
(3)函數沒有明確返回或者return;的時候,返回值為undefined。
(4)在ECMAScript中,規定null==undefined返回true,而null===undefined返回false。
(5)undefined相應的Boolean值為false。
(6)使用typeof作用于undefiend時,返回字符串'undefined',作用于一個從未聲明的“變量”時,也會返回'undefined'。
新聞熱點
疑難解答
圖片精選