js中的數據類型和數據類型轉換

js中的數據類型

原始類型 String Number Boolean Null Undefined Symbolgit

對象 Objectgithub

顯式類型轉換

顯示類型轉換是經過調用下面這三個函數來進行的。函數

  • Number( )
  • String( )
  • Boolean( )

1. Number( )

數值: 轉換以後仍是數值
字符串: 若是能夠被解析爲數值,則轉爲數值,不然轉爲NaN,空字符串轉爲0
布爾值: true轉成1, false轉爲0
undefined: 轉成NaN
null : 轉成0
對象: 這個稍微複雜一些,具體的過程以下code

  • 1.若是調用對象自己的valueOf方法返回的是原始數據類型,則調用Number()來對返回的值進行處理。
  • 2.若是調用對象自己的valueOf方法以後返回的複合數據類型,則調用對象自身的toString方法,若是toString的返回值是原始的數據類型,則對該值使用Number()處理,再也不進行後續步驟。若是toString返回的是複合的數據類型,則報錯。

https://codepen.io/zhaojianxi...對象

2. String( )

數值: 轉換成對應的字符串
字符串: 仍是自身
布爾值 : true轉爲‘true’ ,false轉爲‘false’
undefined: 轉爲「undefined」
null : 轉爲 ‘null’
對象:這個過程同樣是有點複雜,具體的過程以下blog

  1. 若是調用對象自己的toString方法返回的是原始數據類型,則調用String()來, 再也不進行如下步驟。
  2. 若是toString方法返回的是複合類型的值,再調用valueOf方法,若是ValueOf返回的是原始類型的值,則對該值使用String方法,若是valueOf方法返回的是複合類型的值,則報錯。

https://codepen.io/zhaojianxi...字符串

3. Boolean()

除undefined,null,0,NaN,空字符串以外,所有返回true。get

隱式類型轉換

隱式類型轉換的場景大概有以下幾種it

  1. 四則運算
  2. 判斷語句
  3. native調用

https://github.com/JesseZhao1...io

相關文章
相關標籤/搜索