js中數據的顯式轉換與隱式轉換

                                      js中數據的顯式轉換與隱式轉換

一、js中的數據類型:數字 字符串 布爾值 函數 對象(obj {} [] null) 未定義
二、js中數據的顯式轉換方法:Number(), perseInt(), perseFloat()
1、Number()
     NUmber() 是進行整體的轉換,整體中如果有非數字的值,則不能進行轉換,返回的     值爲NaN
    在js中使用Number()進行轉換時,js中的數據類型,類似於數字的字符串可以進行轉       換,空的字符串轉換爲0;單個數組的值可以進行轉換,空的數組的值轉換爲0,空的數     組中包含空的字符串,轉換的值也爲0;布爾值可 以進行轉換 true的值爲1 ,false的     值爲0;null 可以進行轉換,轉換的值爲0;其餘的函數,未定義的, json,以及含有     很多數據的數組是不能進行轉換的,如果強行轉換,返回的值爲NaN
    代碼如下:
            var a='100';
            alert(a+100); //100100
            alert(Number(a)+100);//200
            var b='00100';
            alert(Number(b));// 100
            var c='+100';
            alert(Number(c));//100
            var d='-100';
            alert(Number(d));//-100
            var a1 = '';
            alert(Number(a1));//0
            var a2 = [];
            alert(Number(a2));  //0
            var a3 = [''];
            alert(Number(a3)); //0
            var a4 = null;
            alert(Number(a4)); //0
            var a5;
            alert(Number(a5)); //NaN
2、perseInt()、perseFloat()
     parseInt() parseFloat() 只能進行字符串中數字的轉換
    它的轉換規則是:從左邊開始依次往右邊進行轉換,當遇見第一個非數字的符號時,     轉換停止
    他們只 能進行字符串的數字轉換,不能進行其他的轉換,如果強行轉換,返回的值時     NaN,parseInt()轉換得到的值是整數型,parseFloat()轉換得到的值是浮點數型,可       以通過這一知識利用他倆判斷一個數是否是小數。
    代碼如下:
            var a = '100abc200';
            alert(Number(a));     //NaN
            alert(parseInt(a));     //100
            alert(parseFloat(a)); //100

            var a1 = 'abc100';
            alert(parseInt(a1));     //NaN
            var a2 = '100.12';
            alert(parseInt(a2));     //100
            alert(parseFloat(a2)); //100.12
            
perseInt()   perseFloat()   的實例應用:判斷一個數是否是浮點數
           var a = '100.123';
           if(parseInt(a) == parseFloat(a)){
            alert(a + '是整數');
           }else{
            alert(a + '是小數')
           }

    Number()  perseInt()  perseFloat() 他們的共性是當遇到的值不能進行轉換,返回的       都是NaN 

三、js中數據的隱式轉換方法 :
      1、 +  可以將數字轉換爲字符串
            alert(200 + '3');   //2003
      2、 -  *  /  % 可以將字符串轉換成數字,進行計算
            alert(200 - '3');  //197
            alert('200' - '3');  //197
      3、 ++ -- 可以將字符串轉換爲數字進行計算
            var a = '10';
            a++;
            alert(a);  // 11
      4、> < 可以將字符串轉換爲數字進行比較
           alert('10'>9); //true
           alert('10'>'9') //false
           數字間進行比較與字符串的比較不同,數字是整體的數字進行比較。字符串是按            第一位與第一位比較,哪個值大哪個字符串就大,如果值相同,則比較第二位。            返回的都爲布爾值
      5、== 
      6、! 取反  把右面的數據類型轉換爲布爾值 
           alert(!2) //false  
注意:此文章中紅色標記的部位爲重點部分,藍色標記的爲需要注意的部分,黃色部分爲           應用實例部分    
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章