Javascript基礎のタイプは転換します.

2979 ワード

1.Javascriptのタイプ
Javascriptのタイプは、フリータイプに属しています.Javascriptがサポートするデータタイプは、任意の格納ができます.
JSの値は2種類あります.オリジナルタイプ、オブジェクトタイプ(Object).元のタイプはUnidefined、Null、Boolean、Number、Stringの5種類があります.UnidefinedタイプとNullタイプのは一つの値だけです.すなわちundefinedとnullです.Booleanタイプは二つの値があります.trueとfalse.Numberタイプの値はたくさんあります.Stringタイプの値は理論的に無数です.
すべての対象はvalueOf()とtoString()の方法があります.それらはObjectから継承されています.もちろん布団の種類も書き換えられます.
比較規則:
  • undefined==null、結果はtrueであり、他のすべての値と比較した結果はfalseである.
  • String==Booleanは、2つの操作数が同時にNumberになる必要があります.
  • String/Boolean==Numberは、Stering/BooleanがNumberに転じる必要があります.
  • Object==Primitiveは、ObjectがPrimitiveに移行する必要があります(具体的にはvalueOf()とtoString()方法によります).
  • var value = 'Spursyy';
    value = 10;
    vale = {Name: 'Spursy', Age: 10};
    
    上記の例から、Javascriptはデータタイプに対してダイナミックであることが分かります.したがって、実際の運用には大量のタイプの転化があり、実際の運用にはJavascriptタイプに対しては2つの変換があります.陰的な変換と明示的な変換です.
    2.表示変換
    数値の種類に変換する:Number(mix)、parseInt(string、radix)、parseFloat(string)を文字列のタイプに変換する:toString(radix)、String(mix)をブールのタイプに変換する:Boolean(mix)
    2.1 Number(mix)関数
    // 1.    boolean  ,true   false     1 0
    console.log(Number(true))
    console.log(Number(false))
    // 2.        ,      
    console.log(888)
    // 3.    null,   0
    console.log(Number(null))
    // 4.    undefined,   NaN
    console.log(Number(undefined))
    // 5.       ,      
        // 5.1            ,         
        console.log(Number('888'))
        // 5.2         ,      0
        console.log(Number(''))
        // 5.3         ,   NaN
        console.log(Number('888As88'))
    
    2.2 parseInt(string,radix)関数
    // 1.          ,           
            console.log(parseInt('   1231'))
    // 2.                  ,   NaN
            console.log(parseInt('A888'))
    // 3.           ,                         
            console.log(parseInt('  8888A7777'))
    // 4.            0  ,            ;   0x  ,           
            console.log(parseInt('017'))
            console.log(parseInt('0x1111'))
    
    2.3 String(mix)任意の種類を文字列に変換する
    // 1.    null,  “null”
        console.log(String(null))
    // 2.    undefined,   “undefined”
        console.log(String(undefined))
    
    2.4 Boolean(mix)はどのタイプをBooleanタイプに変換しますか?
    // ''、0、NaN、null、undefined      false,           true。
    console.log(Boolean(''))
    console.log(Boolean(0))
    console.log(Boolean(NaN))
    console.log(Boolean(null))
    console.log(Boolean(undefined))
    
    console.log(Boolean(888))
    
    3暗黙的な変換
    3.1非数値を検出するための関数:isNaN(mix)
    isNaN()関数は、パラメータ値をNumber()で変換しようとしますが、結果が「非数値」であればtrueに戻ります.そうでなければfalseに戻ります.
    3.2逓減演算子(前と後を含む)、正と負の1元演算子をインクリメントする
                    ,        ,          (      ,    Number()      ):
    
    1.                 ,        NaN,           。
    2.       false,      0     1   ,           。
    3.       true,      1     1   ,           。
    4.        ,    1   。
    5.      ,      valueOf()  ,              。     NaN,   toString()           。          。