• JS--显示类型转换Number—隐式类型转换


    显示类型转换 (强制类型转换):
    Number()
    parseInt()
    parseFloat()

    Number是整体转换--能够把一个看起来像数字的字符串转成数字--尽量去转换能转的都转了

    复制代码
    var a = "+100";
    alert( a+100 ); // "100100"
    alert(Number(a)); // 100  
    var a1 = "";
    alert( Number(a1) ); // 0
    var a2 = true;
    alert( Number(a2) ); //true -> 1  false -> 0
    var a3 = []; //[""]  [123]  ["123"] [1,2,3]
    alert( Number(a3) ); // 0  0  123  123  NaN
    var a4 = null;
    alert( Number(a4) ); // 0
    复制代码

    parseInt从左到右一个一个转换,碰到非数字的东西就不转了 只能转像->字符串 前面符号/空格也是认的 

    var b = "100px"; // "-100" "00100" "10.6"
    alert( parseInt(b) ); // 100  -100  100  10
    alert( parseInt(b,10) ); // b,10 是按进制转换--默认是10进制

    parseFloat可以转换小数

    var c = "12.34元"; // "12.3.4"
    alert( parseFloat(c) ); // 12.34  12.3

      

    判断某一个值是整数还是小数

    var num = "200";
    if( parseInt(num) == parseFloat(num) ){
        alert( num + "是整数" );
    }else{
        alert( num + "是小数" );
    }

    Number 中的 NaN

    复制代码
    var json = { abc:123 };
    alert( Number(json) ); // NaN 只要是json的就转不了
    
    var a5;
    alert( Number(a5) ); // NaN
    
    var a3 = function(){ alert(1); };
    alert( Number(a3) ); // NaN 
    复制代码

    隐式类型转换:
    + 200 + "3" --> 2003 变成字符串
    - * / % "200"-3 --> 197 变成数字
    ++ -- 变成数字
    > < 数字的比较、字符串的比较
    ! 取反 把右边的数据类型转成布尔值
    ==

    复制代码
    var a = "10";
    a++;
    alert( a ); // 11
    
    alert( "10" > 9 ); // true
    alert( "10" > "9" ); // fasle  字符串比较  比较一位一位的字符
    //数字的比较与字符串的比较
    //"10" "9"
    
    alert( !true );  // false
    
    alert( "2" == 2 );  // true 判断最终的值
    alert( "2" === 2 ); // false 先去判断类型 再去判断值
    
    alert( Number("......") ); // NaN
    alert( "......"-9 ); // NaN
    复制代码
  • 相关阅读:
    前端数据可视化插件(二)图谱
    前端数据可视化插件(一)图表
    CSS性能优化
    HTML性能优化
    github前端资源
    javascript生成n至m的随机整数
    原生js获取元素样式
    模式二之框架模式
    kendo-ui的使用和开发自己的组件
    pycharm安装报错Non-zero exit co?
  • 原文地址:https://www.cnblogs.com/lanyueff/p/6293637.html
Copyright © 2020-2023  润新知