JavaScript 的數值類型是 Number,它採用 IEEE 754 標準的雙精度浮點數格式。
180 (整數),
3.14 (浮點數)
101e5 (等於 $101 \times 10^5$)
0xAF0b1010o17Number 物件/建構式方法 (型別轉換 & 檢查)用於型別轉換和檢查的全域或 Number 物件上的方法。
| 函數/方法 | 說明 | 範例 |
|---|---|---|
Number(value) |
將其他型別轉換為數值。無法轉換時回傳 NaN。 |
Number('3.14') → 3.14 |
parseInt(str, radix) |
全域函數。解析字串為**整數**。radix (進制) 可選。 |
parseInt('100px') → 100 |
parseFloat(str) |
全域函數。解析字串為**浮點數**。 | parseFloat('3.14') → 3.14 |
isNaN(value) |
全域函數。檢查值是否為 NaN (Not a Number)。 |
isNaN('abc') → true |
Number.isInteger(value) |
判斷傳入的值是否為整數。 | Number.isInteger(12.0) → true |
Number.isFinite(value) |
判斷傳入的值是否為有限數 (非 Infinity, NaN)。 |
Number.isFinite(2/0) → false |
這些方法用於格式化數值輸出,它們通常會回傳**字串 (String)**。
| 方法 | 說明 | 範例 |
|---|---|---|
toFixed(digits) |
將數字四捨五入到指定的小數點位數,回傳字串。 | 3.14159.toFixed(2) → '3.14' |
toPrecision(precision) |
將數字四捨五入到指定的**總長度**,回傳字串。 | 123.45.toPrecision(3) → '123' |
toString(radix) |
將數字轉換為指定進制 (2-36) 的字串表示。 | 255.toString(16) → 'ff' |
toLocaleString() |
根據本地端地區設定格式化數字 (例如加上千分位)。 | 123456.7.toLocaleString('zh-TW') → '123,456.7' |
NaN (Not a Number): 表示不是一個合法的數字,例如 0/0。
特別注意:
NaN === NaN 是 false。請使用 Number.isNaN() 檢查。
Infinity / -Infinity: 表示無限大/負無限大,例如 1/0。
Number.MAX_SAFE_INTEGER: 最大安全整數 ($2^{53} - 1$),超過此值計算可能不準確。