<em id="09ttv"></em>
    <sup id="09ttv"><pre id="09ttv"></pre></sup>
    <dd id="09ttv"></dd>

        • JS中數(shù)據(jù)類型轉(zhuǎn)換

          2020-3-19    seo達(dá)人

          JS中數(shù)據(jù)類型轉(zhuǎn)換

          目前為止,我了解到的JavaScript中共有6種類型。通過typeof關(guān)鍵字可以查看類型名稱。



          數(shù)據(jù)的類型:

          字符串:若值為字符串,則顯示為String。字符串使用單引號或雙引號括起來。在控制臺顯示為黑色。

          數(shù)字:若值為數(shù)字,則顯示為Number。在控制臺顯示為藍(lán)色。

          布爾值:若值為布爾值,則顯示為Boolean。它的值只有”true”和”false”。

          對象:若值為對象,則顯示為Object。

          未定義:若值未定義,也就是僅僅聲明,但未進(jìn)行賦值,則顯示為Undefined。

          空值:若值為指向不引用對象的指針,則顯示為Null,它與Undefined不同,以后慢慢深入了解。



          以下表格詳細(xì)寫出了各種情況下相互轉(zhuǎn)換的結(jié)果,可作為輔助記憶。



          轉(zhuǎn)換為字符串 轉(zhuǎn)換為數(shù)字 轉(zhuǎn)換為布爾值 轉(zhuǎn)換為對象

          undefined “undefined” NaN false throw TypeError

          null “null” 0 false throw TypeError

          true “true” 1 new Boolean(“true”)

          false “false” 0 new Boolean(“false”)

          “” 0 false new String("")

          “1.2” 1.2 true new String(“1.2”)

          “1.2a” NaN true new String(“1.2a”)

          “aaa” NaN true new String(“aaa”)

          0 “0” false new Number(0)

          1 “1” true new Number(1)

          NaN “NaN” false new Number(NaN)

          Infinity “Infinity” true new Number(Infinity)

          [] “” 0 true

          [9] “9” 9 true

          [“a”“b”] “a,b” NaN true

          在Js中,數(shù)據(jù)類型可以相互轉(zhuǎn)換,轉(zhuǎn)換的方式有兩種,隱式轉(zhuǎn)換和強(qiáng)制轉(zhuǎn)換,首先來說一些隱式轉(zhuǎn)換。在進(jìn)行代碼書寫時,要經(jīng)常提醒自己所使用的元素是什么數(shù)據(jù)類型,在進(jìn)行某些操作后是否會導(dǎo)致數(shù)據(jù)類型的變化,原因就是Js會對數(shù)據(jù)進(jìn)行類型的隱式轉(zhuǎn)換。



          隱式轉(zhuǎn)換舉例:

          (+)加法運(yùn)算的隱式轉(zhuǎn)換:加號兩邊只要出先了字符串,就自動將兩者均轉(zhuǎn)化為字符串,使兩個字符串發(fā)生“拼接”,最后生成的結(jié)果也是一個字符串;如果前后都不是字符串,則轉(zhuǎn)化為數(shù)字類型進(jìn)行計算。



          (-、*、/、%)其他算數(shù)運(yùn)算的隱式轉(zhuǎn)換:前后都轉(zhuǎn)化為數(shù)字類型進(jìn)行計算。



          (!)邏輯非的隱式轉(zhuǎn)換:他會將他后面的變量或表達(dá)式轉(zhuǎn)換為布爾值。



          (<,>)比較運(yùn)算符的轉(zhuǎn)換:如果前后存在一個數(shù)字,會對另一個轉(zhuǎn)化為數(shù)字進(jìn)行比較;如果前后均為字符串,會依次比較對應(yīng)字符的編碼大小,老大比老大,老二比老二,依次進(jìn)行。



          (&&,||)邏輯運(yùn)算符的轉(zhuǎn)換:先將前后都轉(zhuǎn)化為布爾值再進(jìn)行判斷,要記住的是,只有undefined,null,0,””,NaN會轉(zhuǎn)化成為false,其他都是true。



          (== 、===)這里作為補(bǔ)充說明,null與Undefined相等但不全等,NaN與任何都不相等。



          強(qiáng)制轉(zhuǎn)換的方式:

          1.轉(zhuǎn)化為字符串

          String(里面寫待轉(zhuǎn)化的內(nèi)容):沒什么好解釋的,就是強(qiáng)制將你所看到的轉(zhuǎn)化為你所看到的。

          toString(里面寫目標(biāo)數(shù)字是幾進(jìn)制),寫法為:待轉(zhuǎn)化內(nèi)容.toString(目標(biāo)內(nèi)容是幾進(jìn)制)。括號內(nèi)不寫時默認(rèn)為10。

          toFixed(保留小數(shù)的位數(shù)),寫法為待轉(zhuǎn)化內(nèi)容.toFixed(保留小數(shù)的位數(shù)),存在精度誤差。



          2.轉(zhuǎn)化為數(shù)字

          Number(),只有所轉(zhuǎn)化內(nèi)容在肉眼看到的全是數(shù)字,才會正常轉(zhuǎn)化;false會轉(zhuǎn)化為0,true會轉(zhuǎn)化為1;null會轉(zhuǎn)化為0;undefined會轉(zhuǎn)化為NaN;其他情況均為NaN。

          parseInt(待轉(zhuǎn)化內(nèi)容,待轉(zhuǎn)化內(nèi)容的進(jìn)制方式),與toString互為逆運(yùn)算,不寫的話默認(rèn)為10。如果待轉(zhuǎn)化內(nèi)容為字符串,若以數(shù)字開頭,可以從開始轉(zhuǎn)換到字符前為止變成數(shù)值。布爾值,undefined,null經(jīng)過轉(zhuǎn)化均為NaN。

          ParseFloat(),與上面一致,不贅述。



          3.轉(zhuǎn)化為布爾值

          書寫方式為Boolean(),如果上面的隱式轉(zhuǎn)換你有好好看,這里很得不需要再寫了。


          日歷

          鏈接

          個人資料

          藍(lán)藍(lán)設(shè)計的小編 http://www.sdgs6788.com

          存檔

          色综合久久中文字幕无码| 国产精品久久久久久福利漫画| 国产午夜电影久久| 国产视频久久| 久久久久精品国产亚洲AV无码| 午夜精品久久久久久毛片| 精品少妇人妻av无码久久| 97精品国产97久久久久久免费| 四虎亚洲国产成人久久精品| 99精品久久精品一区二区| 99久久精品免费看国产一区二区三区| 久久久久亚洲AV成人网| 日韩精品久久久久久久电影蜜臀| 久久国产精品一区二区| 狠狠色丁香婷婷久久综合| 久久777国产线看观看精品| 久久国语露脸国产精品电影| 91久久精品国产成人久久| 久久久女人与动物群交毛片| 99久久99久久精品国产| 亚洲第一极品精品无码久久 | 久久久久久免费一区二区三区| 亚洲国产成人精品无码久久久久久综合 | 深夜久久AAAAA级毛片免费看| 久久精品亚洲精品国产色婷| 一级做a爰片久久毛片毛片| 亚洲va久久久噜噜噜久久| 久久精品国产免费一区| 亚洲综合伊人久久综合| 日韩欧美亚洲综合久久影院Ds| 一本大道久久a久久精品综合| 日产精品久久久久久久性色| 久久天天躁狠狠躁夜夜躁2014| 久久久久久国产a免费观看不卡| 国产精品久久成人影院| 青草国产精品久久久久久| 精品久久久久久久久免费影院| 色悠久久久久久久综合网| 亚洲Av无码国产情品久久| 久久久这里只有精品加勒比| 欧美午夜精品久久久久久浪潮|