1. 程式人生 > >JavaScript複習之--javascript資料型別隱式轉換

JavaScript複習之--javascript資料型別隱式轉換

JavaScript資料型別隱式轉換。
一,函式類
    isNaN()
    該函式會對引數進行隱式的Number()轉換,如果轉換不成功則返回true。
    alert()
    輸出的內容隱式的轉換為字串。

二,運算子類。
    1,算術運算子。
       - * / %
    如果運算元不是數值,將會隱式的呼叫Number()函式。按照這個函式的轉換規則進行轉換。
    如果轉換不成功,整個表示式返回NaN。
       +
    如果運算元都是數值,然後進行相加。
    任何資料型別和字串相加,都會隱式的呼叫他們的toString()方法,然後返回他們拼接的結果。
    如果運算元都是布林值,那麼進行Number()轉換,false為0,true為1,進行相加。

    2,關係運算符
       關係運算符的運算元可以是任何的型別,如果運算元不是數值型別,將會隱式的轉換。
          (1)他運算的結果都是布林值
   (2)都是字串的時候,他會先轉換成ASCII碼然後進行比較大小。
   (3)都是數值的時候,他會正常的比較。
          (4)當一個字串,另一個是數值的時候,他會把字串嘗試轉換成數值型別,然後進行比較。
      如果不能轉換成數值型別, 則會返回NaN(not a number),返回一個假。
          (5)undefined null
   (6)如果兩個都是數值型字串,那麼他們也只會比較第一個。
   (7)如果一個數值和布林值進行比較,會把布林值轉換成數值再進行比較,true為1,false為0
三,等性運算子。
     A. == 只比較值是否相等。
      (1).比較字串的時候,是比較他們的ASCII碼是否相等。
      (2).比較兩個數值的時候,是比較他們的數值是否相等。
      (3).比較函式的時候,判斷他們的位置是否相等。
     B. === 不但比較他們的值是否相等,還要比較型別是否相等。
 

四,語句類
    if(表示式){
    }else{
    }

    三元運算子
    格式:var 變數=Boolean experssion?真值:假值
    while(){}
    if語句和三元表示式裡面的表示式會隱式的呼叫Boolean函式,按照這個函式的轉換規則,轉換為相應的布林值。