97国产精品视频人人做人人爱,3344在线观看无码,成年人国产视频,欧美日一级片,在线看AV天堂,高清无码一本到东京热,欧美一级黄片一区2区,免费又爽又刺激高潮网址

數據類型的轉化(JavaScript)

2020-3-15    前端達人

數據類型的轉化(JavaScript)—自動轉化和強制轉化

這一周,我來分享一下在JavaScript中的數據類型轉化。

首先我們要知道在JavaScript中的數據類型有什么?在這里我就不詳細介紹了,幫你總結好了。

1.布爾類型-----Boolean---isNaN()
    用來判斷一個變量是否為非數字的類型,是數字返回false,不是數字返回true。
 2.數值類型-----Number
    存儲時,是按照二進制數值存儲,輸出時,默認都是按照十進制數值輸出。
    在JavaScript中二進制前加0b/0B,八進制前面加0 ,十六進制前面加0x。
    如果需要按照原始進制數值輸出,用格式為:
            變量名稱.toString(進制) ;
    注意的是:S必須大寫,將數值轉化為字符串形式輸出
    如:console.log( a.toString(2) );將a轉換成2進制的形式輸出。
 3.字符串類型-----String
    JavaScript可以用單引號嵌套雙引號, 或者用雙引號嵌套單引號(外雙內單,外單內雙)
    字符串是由若干字符組成的,這些字符的數量就是字符串的長度。
    通過字符串的length屬性可以獲取整個字符串的長度。
        例子:var str = 'my name is xiaoming';
                  console.log(str.length);
          輸出的結果是19。可以知道空格也代表一個字符。
 4.undefined
    表示沒有數值-----應該有數值,但是現在沒有數值
 5.null
    表示數值為空-----表示有數值,但是數值是“空”
上面就是數據類型的五種形式。那么它是如何轉化呢?聽我詳細給你講解。

在 JavaScript 程序中 , 變量中存儲的數據類型沒有限制,也就是在變量中可以存儲任何符合JavaScript語法規范的數據類型。但是在 JavaScript 程序的執行過程中,往往需要變量中存儲的數值是某種特定的數據類型,別的數據類型不行,此時就需要進行數據類型的轉化。
————————————————
版權聲明:本文為CSDN博主「什什么都繪」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_39406353/article/details/104864224上面就是數據類型的五種形式。那么它是如何轉化呢?聽我詳細給你講解。

在 JavaScript 程序中 , 變量中存儲的數據類型沒有限制,也就是在變量中可以存儲任何符合JavaScript語法規范的數據類型。但是在 JavaScript 程序的執行過程中,往往需要變量中存儲的數值是某種特定的數據類型,別的數據類型不行,此時就需要進行數據類型的轉化。
JavaScript中數據類型的轉化,分為自動轉化和強制轉化:
        自動轉化是計算機程序,自動完成的轉化。
        強制轉化是程序員,強行完成的轉化
1.布爾類型的自動轉化:
 在 執行 if 判斷時 ,其他數據類型會自動轉化為布爾類型
         其他類型轉化為布爾類型的原則
   0   ''   undefined   null  NaN  這五種情況轉化為false
          特別提醒 0.0  0.00000  都算是0 
 其他的所有都會轉化為 true
2.字符串的自動轉化:
  執行字符串拼接, +號的兩側,應該都是字符串類型,會將其他數據類型轉化為字符串類型
        轉化原則:
            //基本數據類型 / 簡單數據類型------將數據數值直接轉化為字符串 , 然后執行拼接操作
         布爾值 true  ---> 字符串 'true'
         布爾值 false ---> 字符串 'fasle'
         undefined ---> 字符串 'undefined'
         unll ---> 字符串 'null'
         數值 ---> 將數值解析轉化為'對應的純數字的字符串'
            // 引用數據類型 / 復雜數據類型
         數組 ---> 將 [] 中的內容,轉化為字符串的形式,執行拼接操作
         對象 ---> 任何對象,任何內容,都會轉化為 [object Object] 固定的內容形式,執行拼接操作
         函數 ---> 將所有的程序代碼,轉化為字符串,執行拼接操作
3.數值的自動轉化:
在執行運算時,會觸發數據類型的自動轉化。
 轉化原則:
    布爾類型 : true  --->  1         
               false --->  0
    undefined : 轉化為 NaN 
    null : 轉化為 0
    字符串 : 
        如果整個字符串,是純數字字符串,或者符合科學計數法 ---> 轉化為對應的數值
       如果字符串內有不符合數字規范的內容 ---> 轉化為 NaN 
    數組,對象,函數:
      如果是+加號執行的是字符串拼接效果,按照這些數據類型轉化為字符串的原則來轉化
      如果是其他形式的運算 執行結果都是 NaN
4.布爾類型的強制轉化:
 
  布爾類型的強制轉化就是使用JavaScript中定義好的 方法/函數 Boolean( 數據/變量 )
  Boolean() 這個方法 不會改變 變量中存儲的原始數值
   轉化原則與自動轉化原則相同
     0   ''   undefined  null  NaN --------> false 
     其他數據,都轉化為true
5.字符串類型的強制轉化:
  
 方法1,變量.toString(進制類型)
         將數值強制轉化為字符串,并且可以設定轉化的進制,.toString() 之前,不能直接寫數值,必須是寫成變量的形式
         進制常用的數值是 2 8 16 ,可以設定的范圍是 2 - 36 進制  
 方法2,String( 變量 / 數據 )
         將變量或者數據,轉化為字符串,原則按照自動轉化的原則來執行,不會改變變量中存儲的原始數值
         但是在字符串拼接時,會將其他數據類型自動轉化為字符串
 6.數字類型的強制轉化:
 
方法1 , Number(變量/數值) 
         console.log( Number(true) );   // 1
         console.log( Number(false) );  // 0
         console.log( Number(null) );   // 0
         console.log( Number(undefined) );   // NaN
         console.log( Number('100') );       // 對應的數值
         console.log( Number('100.123') );   // 對應的數值
         console.log( Number('2e4') );       // 對應的數值
         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
 將其他類型強制轉化為數值類型,轉化原則與自動轉化選擇相同

 方法2, parseInt(變量 / 數據)   是獲取變量或者數據的整數部分
         從數據的 左側起 解析獲取 整數內容 
         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')} ) ); 

         數組執行,是獲取 數值部分 也就是 沒有 []的部分
         1,2,3,4,5  整數部分是 1  1之后是逗號 逗號不是整數,之后的部分也就不算整數
         獲取第一個數值的整數部分,如果有就獲取,如果沒有,結果是NaN
         console.log( parseInt( [1,2,3,4,5] ) );        // 結果是 1                      
         console.log( parseInt( [null,2,3,4,5] ) );     // 結果是 NaN 

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

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

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

 方法3 , parseFloat( 變量 / 數值 )
         獲取浮點數部分
         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')} ) );         
        //數值, 整數,浮點數,都會完整獲取
         console.log( parseFloat(100) );            //100
         console.log( parseFloat(100.1234) );       //100.1234
         console.log( parseFloat(1.234567e3) );     //1234.567

         // 關鍵是字符串
         // 從字符串的左側起 解析 符合浮點數的部分
         console.log( parseFloat( '100' ) );         // 與數字的結果相同 
         console.log( parseFloat( '0.0123' ) );      // 與數字的結果相同 

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

日歷

鏈接

個人資料

藍藍設計的小編 http://www.0391cbd.com

存檔

主站蜘蛛池模板: 免费看的一级毛片| 国产黑丝一区| 午夜天堂视频| 久久久久中文字幕精品视频| 日韩高清无码免费| 日本欧美成人免费| 国产成熟女人性满足视频| 高清无码一本到东京热| 免费看美女毛片| 国产91九色在线播放| 日韩亚洲综合在线| 亚洲天堂色色人体| Aⅴ无码专区在线观看| 拍国产真实乱人偷精品| 国产在线无码av完整版在线观看| 国产午夜福利在线小视频| 国产精品免费p区| 欧美在线国产| 亚洲国产看片基地久久1024| 99九九成人免费视频精品| 怡春院欧美一区二区三区免费| 69国产精品视频免费| 波多野结衣久久精品| 国产精品99久久久久久董美香| 亚洲成人www| 夜夜高潮夜夜爽国产伦精品| 国产精品女在线观看| 亚洲精品视频免费观看| 97se亚洲综合在线韩国专区福利| 天天摸夜夜操| 欧美精品高清| 国产成人喷潮在线观看| 日韩欧美视频第一区在线观看| 国产9191精品免费观看| 国产免费福利网站| 中文字幕永久视频| 精品黑人一区二区三区| 欧美有码在线| 欧美一区精品| 亚洲美女视频一区| 国产精品久久久精品三级| 成人无码一区二区三区视频在线观看 | 天天操天天噜| 澳门av无码| 亚洲午夜久久久精品电影院| 欧美日韩成人在线观看| 国产乱码精品一区二区三区中文 | A级全黄试看30分钟小视频| 日本在线亚洲| 青青草a国产免费观看| 天天综合网色中文字幕| 亚洲国产成人在线| 97国产精品视频自在拍| 三级视频中文字幕| 综合色88| 广东一级毛片| 高潮毛片无遮挡高清视频播放| 久久精品66| 国产熟睡乱子伦视频网站| 国产精品jizz在线观看软件| 老色鬼久久亚洲AV综合| 国产理论精品| 亚洲欧美日韩成人高清在线一区| 亚洲精品无码抽插日韩| 狠狠做深爱婷婷久久一区| 在线免费亚洲无码视频| 一级一级一片免费| 久久久精品无码一区二区三区| 伊人五月丁香综合AⅤ| 极品国产在线| 国产jizzjizz视频| 青青青草国产| 波多野结衣久久高清免费| 日韩 欧美 小说 综合网 另类| 亚洲国产成人无码AV在线影院L| 欧美日韩国产成人高清视频| 88国产经典欧美一区二区三区| 亚洲国产成人久久77| 丁香六月激情综合| 国产成人一二三| 欧美不卡在线视频| 亚洲青涩在线|