數據類型轉換

1、從字符串值轉換爲數值函數

  一般咱們使用函數來進行轉換好比Number()、parseInt()、parseFloat()spa

  可是咱們要注意Number()若是解析包含非數字的字符串時會返回NaN。而parseInt()和parseFloat()會忽略數字之外的其餘字符。若是字符串中只有非數字的字符或者是參數不合理那麼返回NaN。code

  除了使用相關的函數,咱們還可使用隱式轉換。好比使用運算符「-」、「*」、「/」,值得注意的是「+」做爲單目運算符時能夠隱式轉換(參數不合理時返回NaN),可是雙目運算符時爲字符串鏈接符。對象

  若是返回值時NaN的話,如何判斷? 能夠經過函數isNaN(n)來判斷。  blog

2、從數值轉換爲字符串字符串

  顯示的方法是n.toString()或String(n)class

  隱式的方法是利用雙目運算符「+」object

3、轉換爲布爾型數據類型

  顯示轉換Boolean(),可是咱們一般使用隱式轉換。方法

  隱式轉換中如下值將會被轉換爲false:  數值0、數值NaN、null值、undefined值、空字符串''

  比較巧妙的方法是利用「!」進行雙重否認。如:  !!5 

  應該注意的是若是咱們使用Object類型的時候必定要當心,即便是空對象,返回值也是true。

 4、從Object類型轉換爲基本數據類型

  轉換爲字符串: String(obj) 即 obj.toString()     "[object Object]"。使用隱式 +'' 的方式也是這樣。

  轉換爲數值: Number(obj)即obj.valueOf()  若沒法轉換,則 +(obj.toString()) 

  轉換爲布爾型: Boolean(obj)  返回的老是true

  undefined值:  NaN 返回'undefined'

5、從基本類型轉換爲Object類型

  字符串型--》String對象、數值型--》Number對象、布爾型--》Boolean對象、null值--》Error對象、undefined值--》Error對象

相關文章
相關標籤/搜索