六種原始型別
- Boolean:僅有 true, false 兩個值
- Null:僅有 null 的值
- Undefined:沒有被定義的變數
- String:字串型別
- Number
- Symbol
- Object 是唯一的複雜資料型別。(Object 、 Array 、Function 都屬於Object的複雜資料型別)
Undefined 與 Null
這兩個有一些差異,首先建議:”不要將變數手動設為undefined,這可能會造成未預期的結果。
- Undefined 是在定義了一個變數,但是沒有給值
- Null 則是在一個變數上給予了 “空值”(為什麼 null 是 Object,自從有 JavaScript 開始就是這樣了,)
- JavaScript 本身不會自動給予值 Null,這是讓開發者來設定變數沒有值的
- 強制轉型 Number(undefined) -> NaN、Number(null) -> 0
- typeof(undefined) -> undefined、typeof(null) -> Object
null 是有效的 JSON 值,undefined 不是
Number
數字型別是一種浮點數),這種數值在極大值時會有精準度的問題,
三種都屬於此 Number 型別。
- +Infinity
- -Infinity
- NaN (not a number,但屬於數字型別,強制轉型有時會出現此錯誤)
javascript有兩種型別
1.primitive Type(原始型別)
number/string /boolean/null/undefind
2.Object Type(物件型別)