• parseInt()解析整数与parsetFloat()解析浮点数


    1.parseInt(string,radix) 解析整数

    parseInt("dgei23");            // NaN          
    parseInt("3 blind mice");      // 3
    parseInt("-12.34");            // -12
    parseInt("0xFF");              // 255
    parseInt("0.1");               // 0
    parseInt(".1");                // 因为整数不能以'.'开始
    parseInt("$72.47");            // NaN,因为整数不能以'$'开始

    指定基数radix

    parseInt("08");                // 0 (在ECMAscript3中是0,因为会被认为是8八进制)
    parseInt("08",10);             // 8 (这样才是10进制)

    //都是返回15

    parseInt("1111", 2);
    parseInt(021, 8);
    parseInt("17", 8);
    parseInt("015", 10);   // parseInt(015, 10); will return 13
    parseInt(15.99, 10);
    parseInt("15*3", 10);
    parseInt("15e2", 10);
    parseInt("15px", 10);
    parseInt("15,123", 10);
    parseInt("12", 13);
    parseInt(" F", 16);
    parseInt(" 0xF", 16);
    parseInt("FXX123", 16);

    // 更加严格的解析整数函数

    function filterInt(value){
        //-+符号在前
        if(/^(-|+)?([0-9]+|Infinity)$/).test(value){
            return Number(value);
        }
        return NaN;
    }
    filterInt("421");                // 421 
    filterInt("-421");               // -421 
    filterInt("+421");               // 421 
    filterInt("Infinity");           // Infinity 
    filterInt("421e+0");             // NaN
    filterInt("421hop");             // NaN
    filterInt("hop1.618033");        // NaN
    filterInt("1.618033");           // NaN

    parseFloat(string) 解析浮点数

    parseFloat("dgei2.3");           // NaN
    parseFloat("3.14 meters");       // 3.14
    parseFloat("0.1");               // 0.1
    parseFloat(".1");                // 0.1
    
    //都是返回3.14
    parseFloat("3.14");
    parseFloat("314e-2");
    parseFloat("0.0314E+2");
    parseFloat("3.14more non-digit characters");

    // 更加严格的解析小数函数

    function filterFloat(value){
        if(/^(-|+)?([0-9]+|(.[0-9]+)?|Infinity)$/).test(value){
            return Number(value);
        }
        return NaN;
    }
    filterFloat("421");               // 421
    filterFloat("-421");              // -421
    filterFloat("+421");              // 421
    filterFloat("Infinity");          // Infinity
    filterFloat("1.61803398875");     // 1.61803398875
    filterFloat("421e+0");            // NaN
    filterFloat("421hop");            // NaN
    filterFloat("hop1.61803398875");  // NaN
  • 相关阅读:
    jQuery为啥要提供一个load()方法?
    某大学程序设计竞赛
    【Error】JavaWeb: 严重: Failed to initialize end point associated with ProtocolHandler ["http-bio-8080"]
    form表单和表格
    AJAX入门---DOM操作HTML
    设计模式学习01—单例模式
    Spring MVC 数据验证——validate注解方式
    HOW TO: How to import UUID function into Postgre 9.3
    STM8S 串口应用 UART2 STM8S105
    微信公众平台应用开发框架sophia设计不足(1)
  • 原文地址:https://www.cnblogs.com/alantao/p/5859808.html
Copyright © 2020-2023  润新知