js 的隱式轉換與顯式轉換


隱式轉換
 
1.undefined與null相等,但不恆等(===)
2.一個是number一個是string時,會嘗試將string轉換為number
3.隱式轉換將boolean轉換為number,0或1
4.隱式轉換將Object轉換成number或string,取決於另外一個對比量的類型
5.對於0、空字符串的判斷,建議使用 “===” 。
6.“==”會對不同類型值進行類型轉換再判斷,“===”則不會。它會先判斷兩邊的值類型,類型不匹配時直接為false。
undefined == null;  // true   
1 == true;  // true  
2 == true;  // false  
0 == false;  // true
0 == '';  // true   
NaN == NaN;  // false  NaN不等於任何值
[] == false;  // true  
[] == ![];  // true
'6' - '3'  // 3
1234 + 'abcd' // "1234abcd"

 

顯示轉換

顯示轉換一般指使用Number、String和Boolean三個構造函數,手動將各種類型的值,轉換成數字、字符串或者布爾值。

Number:

Number('1234') // 1234
Number('1234abcd') // NaN
Number('') // 0
Number(true) // 1
Number(null) // 0
Number(undefined) // NaN
 
String:
 
String(1234)  // "1234"
String('abcd')  // "abcd"
String(true)  // "true"
String(undefined) // "undefined"
String(null)  // "null"

 

Boolean:
 
Boolean(0)  // false
Boolean(undefined)  // false
Boolean(null)  // false
Boolean(NaN)  // false
Boolean('')  // false

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM