js中的隱式轉換

2021-10-01 09:49:30 字數 839 閱讀 6683

原因:如上圖很疑惑這樣能判斷通過。

後來查閱資料是因為js中的隱式轉換的問題;

js原始型別包含:stringnumberbooleannullundefinedsymbol

js的物件型別包含:object

隱式轉換概念:

1.undefined與null相等,但不恒等(===)

2.乙個是number乙個是string時,會嘗試將string轉換為number

3.隱式轉換將boolean轉換為number,0或1

4.隱式轉換將object轉換成number或string,取決於另外乙個對比量的型別

5.對於0、空字串的判斷,建議使用 「===」 。

6.「==」會對不同型別值進行型別轉換再判斷,「===」則不會。它會先判斷兩邊的值型別,型別不匹配時直接為false。

隱式轉換中主要是三種轉換方式:

總結:

preferredtype沒有設定時,date型別的物件,preferredtype預設設定為string,其他型別物件preferredtype預設設定為number

js 隱式轉換

1.數字number與字串string相加的就,最後會得到乙個字串string 1 3 13 2.數字number與字串string相減,最後會得到乙個數字number 1 0 1,s 0 nan 3.數字number與字串string相乘 最後會得到乙個數字number 1 10 10,s 10 ...

js隱式轉換

js基礎資料型別 string number boolean null undefined symbol 當運算子在運算時,如果運算子兩邊的資料型別不一致,那麼cpu就無法進行計算。js的編輯器會自動將運算子兩邊的資料轉換為同一型別,從而讓計算機識別並可以進行計算,這一轉換過程由編譯器自動自行,不需...

js 隱式轉換

其它型別轉換成布林型別 1.未聲名的變數名 undefined false 2.變數名為 null 為空 null false 3.number 0 0.0 0 0 nan false 4.空字串 false 5.其它物件 true 1 其它型別轉換為數值型 number 1.undefined n...