亚洲av日韩av永久无码久久,免费的视频app网站,欧美性猛交xxxx免费看,国产成人精品三级麻豆

數(shù)據(jù)類型的轉(zhuǎn)化(JavaScript)

2020-3-15    前端達(dá)人

數(shù)據(jù)類型的轉(zhuǎn)化(JavaScript)—自動(dòng)轉(zhuǎn)化和強(qiáng)制轉(zhuǎn)化

這一周,我來(lái)分享一下在JavaScript中的數(shù)據(jù)類型轉(zhuǎn)化。

首先我們要知道在JavaScript中的數(shù)據(jù)類型有什么?在這里我就不詳細(xì)介紹了,幫你總結(jié)好了。

1.布爾類型-----Boolean---isNaN()
    用來(lái)判斷一個(gè)變量是否為非數(shù)字的類型,是數(shù)字返回false,不是數(shù)字返回true。
 2.數(shù)值類型-----Number
    存儲(chǔ)時(shí),是按照二進(jìn)制數(shù)值存儲(chǔ),輸出時(shí),默認(rèn)都是按照十進(jìn)制數(shù)值輸出。
    在JavaScript中二進(jìn)制前加0b/0B,八進(jìn)制前面加0 ,十六進(jìn)制前面加0x。
    如果需要按照原始進(jìn)制數(shù)值輸出,用格式為:
            變量名稱.toString(進(jìn)制) ;
    注意的是:S必須大寫(xiě),將數(shù)值轉(zhuǎn)化為字符串形式輸出
    如:console.log( a.toString(2) );將a轉(zhuǎn)換成2進(jìn)制的形式輸出。
 3.字符串類型-----String
    JavaScript可以用單引號(hào)嵌套雙引號(hào), 或者用雙引號(hào)嵌套單引號(hào)(外雙內(nèi)單,外單內(nèi)雙)
    字符串是由若干字符組成的,這些字符的數(shù)量就是字符串的長(zhǎng)度。
    通過(guò)字符串的length屬性可以獲取整個(gè)字符串的長(zhǎng)度。
        例子:var str = 'my name is xiaoming';
                  console.log(str.length);
          輸出的結(jié)果是19??梢灾揽崭褚泊硪粋€(gè)字符。
 4.undefined
    表示沒(méi)有數(shù)值-----應(yīng)該有數(shù)值,但是現(xiàn)在沒(méi)有數(shù)值
 5.null
    表示數(shù)值為空-----表示有數(shù)值,但是數(shù)值是“空”
上面就是數(shù)據(jù)類型的五種形式。那么它是如何轉(zhuǎn)化呢?聽(tīng)我詳細(xì)給你講解。

在 JavaScript 程序中 , 變量中存儲(chǔ)的數(shù)據(jù)類型沒(méi)有限制,也就是在變量中可以存儲(chǔ)任何符合JavaScript語(yǔ)法規(guī)范的數(shù)據(jù)類型。但是在 JavaScript 程序的執(zhí)行過(guò)程中,往往需要變量中存儲(chǔ)的數(shù)值是某種特定的數(shù)據(jù)類型,別的數(shù)據(jù)類型不行,此時(shí)就需要進(jìn)行數(shù)據(jù)類型的轉(zhuǎn)化。
————————————————
版權(quán)聲明:本文為CSDN博主「什什么都繪」的原創(chuàng)文章,遵循 CC 4.0 BY-SA 版權(quán)協(xié)議,轉(zhuǎn)載請(qǐng)附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_39406353/article/details/104864224上面就是數(shù)據(jù)類型的五種形式。那么它是如何轉(zhuǎn)化呢?聽(tīng)我詳細(xì)給你講解。

在 JavaScript 程序中 , 變量中存儲(chǔ)的數(shù)據(jù)類型沒(méi)有限制,也就是在變量中可以存儲(chǔ)任何符合JavaScript語(yǔ)法規(guī)范的數(shù)據(jù)類型。但是在 JavaScript 程序的執(zhí)行過(guò)程中,往往需要變量中存儲(chǔ)的數(shù)值是某種特定的數(shù)據(jù)類型,別的數(shù)據(jù)類型不行,此時(shí)就需要進(jìn)行數(shù)據(jù)類型的轉(zhuǎn)化。
JavaScript中數(shù)據(jù)類型的轉(zhuǎn)化,分為自動(dòng)轉(zhuǎn)化和強(qiáng)制轉(zhuǎn)化:
        自動(dòng)轉(zhuǎn)化是計(jì)算機(jī)程序,自動(dòng)完成的轉(zhuǎn)化。
        強(qiáng)制轉(zhuǎn)化是程序員,強(qiáng)行完成的轉(zhuǎn)化
1.布爾類型的自動(dòng)轉(zhuǎn)化:
 在 執(zhí)行 if 判斷時(shí) ,其他數(shù)據(jù)類型會(huì)自動(dòng)轉(zhuǎn)化為布爾類型
         其他類型轉(zhuǎn)化為布爾類型的原則
   0   ''   undefined   null  NaN  這五種情況轉(zhuǎn)化為false
          特別提醒 0.0  0.00000  都算是0 
 其他的所有都會(huì)轉(zhuǎn)化為 true
2.字符串的自動(dòng)轉(zhuǎn)化:
  執(zhí)行字符串拼接, +號(hào)的兩側(cè),應(yīng)該都是字符串類型,會(huì)將其他數(shù)據(jù)類型轉(zhuǎn)化為字符串類型
        轉(zhuǎn)化原則:
            //基本數(shù)據(jù)類型 / 簡(jiǎn)單數(shù)據(jù)類型------將數(shù)據(jù)數(shù)值直接轉(zhuǎn)化為字符串 , 然后執(zhí)行拼接操作
         布爾值 true  ---> 字符串 'true'
         布爾值 false ---> 字符串 'fasle'
         undefined ---> 字符串 'undefined'
         unll ---> 字符串 'null'
         數(shù)值 ---> 將數(shù)值解析轉(zhuǎn)化為'對(duì)應(yīng)的純數(shù)字的字符串'
            // 引用數(shù)據(jù)類型 / 復(fù)雜數(shù)據(jù)類型
         數(shù)組 ---> 將 [] 中的內(nèi)容,轉(zhuǎn)化為字符串的形式,執(zhí)行拼接操作
         對(duì)象 ---> 任何對(duì)象,任何內(nèi)容,都會(huì)轉(zhuǎn)化為 [object Object] 固定的內(nèi)容形式,執(zhí)行拼接操作
         函數(shù) ---> 將所有的程序代碼,轉(zhuǎn)化為字符串,執(zhí)行拼接操作
3.數(shù)值的自動(dòng)轉(zhuǎn)化:
在執(zhí)行運(yùn)算時(shí),會(huì)觸發(fā)數(shù)據(jù)類型的自動(dòng)轉(zhuǎn)化。
 轉(zhuǎn)化原則:
    布爾類型 : true  --->  1         
               false --->  0
    undefined : 轉(zhuǎn)化為 NaN 
    null : 轉(zhuǎn)化為 0
    字符串 : 
        如果整個(gè)字符串,是純數(shù)字字符串,或者符合科學(xué)計(jì)數(shù)法 ---> 轉(zhuǎn)化為對(duì)應(yīng)的數(shù)值
       如果字符串內(nèi)有不符合數(shù)字規(guī)范的內(nèi)容 ---> 轉(zhuǎn)化為 NaN 
    數(shù)組,對(duì)象,函數(shù):
      如果是+加號(hào)執(zhí)行的是字符串拼接效果,按照這些數(shù)據(jù)類型轉(zhuǎn)化為字符串的原則來(lái)轉(zhuǎn)化
      如果是其他形式的運(yùn)算 執(zhí)行結(jié)果都是 NaN
4.布爾類型的強(qiáng)制轉(zhuǎn)化:
 
  布爾類型的強(qiáng)制轉(zhuǎn)化就是使用JavaScript中定義好的 方法/函數(shù) Boolean( 數(shù)據(jù)/變量 )
  Boolean() 這個(gè)方法 不會(huì)改變 變量中存儲(chǔ)的原始數(shù)值
   轉(zhuǎn)化原則與自動(dòng)轉(zhuǎn)化原則相同
     0   ''   undefined  null  NaN --------> false 
     其他數(shù)據(jù),都轉(zhuǎn)化為true
5.字符串類型的強(qiáng)制轉(zhuǎn)化:
  
 方法1,變量.toString(進(jìn)制類型)
         將數(shù)值強(qiáng)制轉(zhuǎn)化為字符串,并且可以設(shè)定轉(zhuǎn)化的進(jìn)制,.toString() 之前,不能直接寫(xiě)數(shù)值,必須是寫(xiě)成變量的形式
         進(jìn)制常用的數(shù)值是 2 8 16 ,可以設(shè)定的范圍是 2 - 36 進(jìn)制  
 方法2,String( 變量 / 數(shù)據(jù) )
         將變量或者數(shù)據(jù),轉(zhuǎn)化為字符串,原則按照自動(dòng)轉(zhuǎn)化的原則來(lái)執(zhí)行,不會(huì)改變變量中存儲(chǔ)的原始數(shù)值
         但是在字符串拼接時(shí),會(huì)將其他數(shù)據(jù)類型自動(dòng)轉(zhuǎn)化為字符串
 6.數(shù)字類型的強(qiáng)制轉(zhuǎn)化:
 
方法1 , Number(變量/數(shù)值) 
         console.log( Number(true) );   // 1
         console.log( Number(false) );  // 0
         console.log( Number(null) );   // 0
         console.log( Number(undefined) );   // NaN
         console.log( Number('100') );       // 對(duì)應(yīng)的數(shù)值
         console.log( Number('100.123') );   // 對(duì)應(yīng)的數(shù)值
         console.log( Number('2e4') );       // 對(duì)應(yīng)的數(shù)值
         console.log( Number('123abc') );    // NaN
         console.log( Number( [1,2,3,4,5] ) );                           // NaN
         console.log( Number( {name:'zhangsan'} ) );                     // NaN
         console.log( Number( function fun(){console.log('abc')} ) );    // NaN
 將其他類型強(qiáng)制轉(zhuǎn)化為數(shù)值類型,轉(zhuǎn)化原則與自動(dòng)轉(zhuǎn)化選擇相同

 方法2, parseInt(變量 / 數(shù)據(jù))   是獲取變量或者數(shù)據(jù)的整數(shù)部分
         從數(shù)據(jù)的 左側(cè)起 解析獲取 整數(shù)內(nèi)容 
         console.log( parseInt(true) );                 // 都是 NaN            
         console.log( parseInt(false) );                                   
         console.log( parseInt(null) );                                    
         console.log( parseInt(undefined) );                               
         console.log( parseInt( {name:'zhangsan'} ) );                     
         console.log( parseInt( function fun(){console.log('abc')} ) ); 

         數(shù)組執(zhí)行,是獲取 數(shù)值部分 也就是 沒(méi)有 []的部分
         1,2,3,4,5  整數(shù)部分是 1  1之后是逗號(hào) 逗號(hào)不是整數(shù),之后的部分也就不算整數(shù)
         獲取第一個(gè)數(shù)值的整數(shù)部分,如果有就獲取,如果沒(méi)有,結(jié)果是NaN
         console.log( parseInt( [1,2,3,4,5] ) );        // 結(jié)果是 1                      
         console.log( parseInt( [null,2,3,4,5] ) );     // 結(jié)果是 NaN 

         如果是整數(shù)就直接獲取,如果是浮點(diǎn)數(shù),或者科學(xué)計(jì)數(shù)法,就獲取整數(shù)部分
         console.log( parseInt( 100 ) );          // 整數(shù)是直接獲取
         console.log( parseInt( 0.0123 ) );       // 浮點(diǎn)數(shù)是獲取整數(shù)部分
         console.log( parseInt( 3.123456e3 ) );   // 科學(xué)計(jì)數(shù)法是解析之后,獲取整數(shù)部分

         字符串不同了
         如果是純數(shù)字的字符串
         console.log( parseInt( '100' ) );         // 與數(shù)字的結(jié)果相同 
         console.log( parseInt( '0.0123' ) );      // 與數(shù)字的結(jié)果相同 

         console.log( parseInt( '3.123456e3' ) );   //3
         console.log( parseInt( '3abc' ) );   //3
         console.log( parseInt( '3.123' ) );   //3

 方法3 , parseFloat( 變量 / 數(shù)值 )
         獲取浮點(diǎn)數(shù)部分
         console.log( parseFloat(true) );           // 都是 NaN            
         console.log( parseFloat(false) );                                   
         console.log( parseFloat(null) );                                    
         console.log( parseFloat(undefined) );                               
         console.log( parseFloat( {name:'zhangsan'} ) );                     
         console.log( parseFloat( function fun(){console.log('abc')} ) );         
        //數(shù)值, 整數(shù),浮點(diǎn)數(shù),都會(huì)完整獲取
         console.log( parseFloat(100) );            //100
         console.log( parseFloat(100.1234) );       //100.1234
         console.log( parseFloat(1.234567e3) );     //1234.567

         // 關(guān)鍵是字符串
         // 從字符串的左側(cè)起 解析 符合浮點(diǎn)數(shù)的部分
         console.log( parseFloat( '100' ) );         // 與數(shù)字的結(jié)果相同 
         console.log( parseFloat( '0.0123' ) );      // 與數(shù)字的結(jié)果相同 

         console.log( parseFloat( '3.123456e3' ) );  // 科學(xué)技術(shù)法會(huì)解析
         console.log( parseFloat( '3.1223abc' ) );        
         console.log( parseFloat( '3.123' ) );  
好了,這就是在JavaScript中數(shù)據(jù)類型的轉(zhuǎn)化,希望可以幫助到你。
————————————————
版權(quán)聲明:本文為CSDN博主「什什么都繪」的原創(chuàng)文章,遵循 CC 4.0 BY-SA 版權(quán)協(xié)議,轉(zhuǎn)載請(qǐng)附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_39406353/article/details/104864224

日歷

鏈接

個(gè)人資料

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

存檔

人妻熟妇乱又伦精品视频app | 亚洲va久久久噜噜噜久久天堂| 含羞草国产亚洲精品岁国产精品| 娇妻玩4p被三个男人伺候电影| 人妻体内射精一区二区三区| 久久综合狠狠综合久久综合88| 再深点灬舒服灬太大了添a片v| 无套内谢少妇毛片a片999| 日日碰狠狠添天天爽超碰97| 三年片在线观看免费大全| 国产精品18久久久久久麻辣| 韩国三级中文字幕hd久久精品| 国产精品国产三级国产专播| 国产农村熟妇videos| 评书三国演义袁阔成播讲365集 | 国产农村妇女毛片精品久久| 日本高清视频www| 香蕉人妻av久久久久天天 | chinese熟女老女人hd| 国产亚洲av片在线观看18女人| 国产99久一区二区三区a片| 无码无套少妇毛多18pxxxx| 免费看美女被靠到爽的视频| 无套内谢少妇毛片a片999| 五十路熟妇高熟无码视频| 久久久精品波多野结衣| 久久av色欲av久久蜜桃麻豆| 最近免费韩国电影高清版无吗| 人与禽性视频77777| 日本精品人妻无码免费大全| 亚洲中文字幕无码AV| 俄罗斯少妇性做爰片| 日本高清视频www| 国产l精品国产亚洲区久久 | 多人疯狂的在她体内撞np| av在线免费观看| 强开小婷嫩苞又嫩又紧视频 | 亚洲av夜夜欢一区二区三区| 精品国产综合区久久久久久| 久久国产精品无码网站| 亚洲日韩一区二区三区四区高清|