Number
:整數或浮點數,還有一些特殊值(-Infinity
、+Infinity
、NaN
注意
- 任何對象都有
toString()
方法嗎?null
和undefined
就沒有!另外,null
還僞裝成了object
類型。 number
對象調用toString()
報SyntaxError
問題:
123.toString(); // SyntaxError
遇到這種情況,要特殊處理一下:
123..toString(); // '123', 注意是兩個點! (123).toString(); // '123'
JavaScript 中只有一種數字類型:基於 IEEE 754 標準的雙精度 。它並沒有爲整數給出一種特定的類型。所以所有的數字都是小數123.toString()
等價於 123.0toString()
除非使用 (123).toString()
(123).toString()
等價於 123.0.toString()
和 123..toString()
因爲 123. === 123.0
true
- 引用類型轉換爲
Number
類型,先調用valueOf
,再調用toString
- 引用類型轉換爲
String
類型,先調用toString
,再調用valueOf