官术网_书友最值得收藏!

2.5 數(shù)據(jù)類型的轉(zhuǎn)換規(guī)則

視頻講解

在對表達式進行求值時,通常需要所有的操作數(shù)都屬于某種特定的數(shù)據(jù)類型,例如,進行算術(shù)運算要求操作數(shù)都是數(shù)值類型,進行字符串連接運算要求操作數(shù)都是字符串類型,而進行邏輯運算則要求操作數(shù)都是布爾類型。

然而,JavaScript語言并沒有對此進行限制,而且允許運算符對不匹配的操作數(shù)進行計算。在代碼執(zhí)行過程中,JavaScript會根據(jù)需要進行自動類型轉(zhuǎn)換,但是在轉(zhuǎn)換時也要遵循一定的規(guī)則。下面介紹幾種數(shù)據(jù)類型之間的轉(zhuǎn)換規(guī)則。

 其他數(shù)據(jù)類型轉(zhuǎn)換為數(shù)值型數(shù)據(jù),如表2.10所示。

表2.10 轉(zhuǎn)換為數(shù)值型數(shù)據(jù)

 其他數(shù)據(jù)類型轉(zhuǎn)換為邏輯型數(shù)據(jù),如表2.11所示。

表2.11 轉(zhuǎn)換為邏輯型數(shù)據(jù)

 其他數(shù)據(jù)類型轉(zhuǎn)換為字符串型數(shù)據(jù),如表2.12所示。

表2.12 轉(zhuǎn)換為字符串型數(shù)據(jù)

例如,根據(jù)不同數(shù)據(jù)類型之間的轉(zhuǎn)換規(guī)則輸出以下表達式的結(jié)果:100+"200"、100-"200"、true+100、true+"100"、true+false和"a"-100。代碼如下:

    01  document.write(100+"200");   //輸出表達式的結(jié)果
    02  document.write("<br>");       //輸出換行標記
    03  document.write(100-"200");    //輸出表達式的結(jié)果
    04  document.write("<br>");       //輸出換行標記
    05  document.write(true+100);     //輸出表達式的結(jié)果
    06  document.write("<br>");       //輸出換行標記
    07  document.write(true+"100");   //輸出表達式的結(jié)果
    08  document.write("<br>");       //輸出換行標記
    09  document.write(true+false);   //輸出表達式的結(jié)果
    10  document.write("<br>");       //輸出換行標記
    11  document.write("a"-100);      //輸出表達式的結(jié)果

運行結(jié)果為:

    100200
    -100
    101
    true100
    1
    NaN
主站蜘蛛池模板: 黑山县| 湾仔区| 山阳县| 南江县| 信丰县| 石屏县| 南皮县| 平罗县| 莱州市| 名山县| 读书| 松阳县| 越西县| 五河县| 呼玛县| 庄浪县| 和静县| 乌拉特后旗| 星子县| 兴安盟| 达日县| 资中县| 鄂温| 雷山县| 咸丰县| 樟树市| 曲麻莱县| 台湾省| 广宁县| 太白县| 嘉禾县| 孝义市| 青阳县| 仲巴县| 鹤峰县| 泸定县| 建昌县| 大方县| 白朗县| 清新县| 马尔康县|