JavaScript是一種動態類型語言(dynamically typed language)。這意味着你聲明變量時能夠 沒必要指定數據類型,而數據類型會在腳本執行時根據須要自動轉換。
而且,還能夠給同一個變量賦予一個字符串值,例如web
由於 JavaScript 是動態類型的,這樣賦值不會提示出錯。segmentfault
涉及加法運算符(+)的數字和字符串表達式中,JavaScript 會把數字值轉換爲字符串。例如數組
但在涉及其它運算符(譯註:以下面的減號'-')時,JavaScript語言不會把數字變爲字符串。例如(譯註:第一例是數學運算,第二例是字符串運算):瀏覽器
因爲 JavaScript 中的變量是 鬆散類型 的,因此JavaScript提供了一種檢測當前變量的數據類型的操做符,也就是 typeof 。函數
經過使用 typeof() 的方式獲取對象的數據類型,包括如下類型:boolean、string、number、undefined、object、function 。spa
注意3d
(1)NaN 的數據類型是 number對象
(2)未定義變量的數據類型爲 undefinedblog
(3)數組(Array)的數據類型是 objectip
(4)日期(Date)的數據類型爲 object
(5)null 的數據類型是 object
(6)函數(function)的數據類型是 function
Number() 函數把對象的值轉換爲數字。
Number(object)
參數 | 描述 |
---|---|
object | 必需。JavaScript 對象。 |
(1)若是參數是 Date 對象,Number() 返回從 1970 年 1 月 1 日至今的毫秒數。
(2)若是對象的值沒法轉換爲數字,那麼 Number() 函數返回 NaN。
parseInt() 函數可解析一個字符串,並返回一個 整數。
(1)當參數 radix 的值爲 0,或沒有設置該參數時,parseInt() 會根據 string 來判斷數字的基數。
(2)當忽略參數 radix , JavaScript 默認數字的基數以下:
parseInt(string, radix)
參數 | 描述 |
---|---|
string | 必需。要被解析的字符串。 |
radix | 可選。表示要解析的數字的基數。該值介於 2 ~ 36 之間。 |
(1)只有字符串中的第一個數字會被返回。
(2)開頭和結尾的空格是容許的。
(3)若是字符串的第一個字符不能被轉換爲數字,那麼 parseInt() 會返回 NaN。
(4)在字符串以"0"爲開始時舊的瀏覽器默認使用八進制基數。ECMAScript 5,默認的是十進制的基數。
parseFloat() 函數可解析一個字符串,並返回一個 浮點數。
該函數指定字符串中的首個字符是不是數字。若是是,則對字符串進行解析,直到到達數字的末端爲止,而後以數字返回該數字,而不是做爲字符串。
parseFloat(string)
參數 | 描述 |
---|---|
string | 必需。要被解析的字符串。 |
(1)字符串中只返回第一個數字。
(2)開頭和結尾的空格是容許的。
(3)若是字符串的第一個字符不能被轉換爲數字,那麼 parseFloat() 會返回 NaN。