精华内容
下载资源
问答
  • js 保留小数

    2019-01-15 11:05:44
    因为toFixed()函数不能对整数使用,所以重写了一个toFixed... * 保留小数位,原生的toFixed不能用于整数 * @param value 值 * @param scale 小数位 * @returns {number|*} */ $scope.toFixed = function(value, ...

    因为toFixed()函数不能对整数使用,所以重写了一个toFixed()方法 ,

        /**
         * 保留小数位,原生的toFixed不能用于整数
         * @param value 值
         * @param scale 小数位
         * @returns {number|*}
         */
        $scope.toFixed = function(value, scale){
            value *= Math.pow(10, scale);
            value = Math.round(value);
            value = value / (Math.pow(10, scale));
            return value;
        }

     

    展开全文
  • js保留小数

    2019-07-29 11:42:27
    方法一:使用toFixed保留两位小数 var num1 = 55.3715; console.log(num1.toFixed(2)); 打开浏览器调试工具,可以看到如下打印结果,55.37保留了两位小数,之后的两位舍弃; toFixed自带补位功能 var num4 = 55.3;...

    方法一:使用toFixed保留两位小数

    var num1 = 55.3715; 
    console.log(num1.toFixed(2));
    

    打开浏览器调试工具,可以看到如下打印结果,55.37保留了两位小数,之后的两位舍弃;

    toFixed自带补位功能

    var num4 = 55.3; 
    console.log(num4.toFixed(2));
    var num5 = 55; 
    console.log(num5.toFixed(2));
    

    从打印结果可以看出,55.3补一位0,55补了两位00

    方法二:substr直接按字符串截取

    var num1 = 55.3785 + ""; 
    console.log("substr方式保留两位小数:");
    console.log(num1.substr(0,num1.indexOf(".")+3));
    

    这种方式没有四舍五入的功能,直接按位截取的,也没有补位功能

    方法三:浮点数四舍五入

    var num1 = parseFloat(55.7856); 
      if (!isNaN(num1)) { 
      num1 = Math.round(num1*100)/100; 
      console.log("将浮点数四舍五入,取小数点后2位:");
      console.log(num1);
      }
      ngth; 
    
        str += '.'; 
    
       } 
    
       while (str.length <= rs + 2) { 
    
        str += '0'; 
    
       } 
    
      console.log("将浮点数四舍五入,取小数点后2位,位数不够进行补位:");
    
      console.log(str);
    
      }
    

    js如何保留两位小数

    展开全文
  • js保留小数位数

    2017-05-11 14:36:15
    js保留小数
    <!DOCTYPE html>  
    <html>  
    <head>  
    <meta charset="UTF-8">  
    <title>Test</title>  
    <script type="text/javascript" src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script>  
    </head>  
    <script type="text/javascript">    
        //保留两位小数     
        //功能:将浮点数四舍五入,取小数点后2位    
        function toDecimal(x) {    
            var f = parseFloat(x);    
            if (isNaN(f)) {    
                return;    
            }    
            f = Math.round(x*100)/100;    
            return f;    
        }    
      
      
        //制保留2位小数,如:2,会在2后面补上00.即2.00    
        function toDecimal2(x) {    
            var f = parseFloat(x);    
            if (isNaN(f)) {    
                return false;    
            }    
            var f = Math.round(x*100)/100;    
            var s = f.toString();    
            var rs = s.indexOf('.');    
            if (rs < 0) {    
                rs = s.length;    
                s += '.';    
            }    
            while (s.length <= rs + 2) {    
                s += '0';    
            }    
            return s;    
        }    
            
        function fomatFloat(src,pos){       
             return Math.round(src*Math.pow(10, pos))/Math.pow(10, pos);       
        }    
          
        document.write("四舍五入  <br/>")  
        document.write("3.14159267保留2位小数:" + toDecimal(3.14159267)+"<br/>");    
        document.write("3.14159267强制保留2位小数:" + toDecimal2(3.000)+"<br/>");    
        document.write("3.14159267保留2位小数:" + toDecimal(3.14559267)+"<br/>");    
        document.write("3.14159267强制保留2位小数:" + toDecimal2(3.15159267)+"<br/>");    
        document.write("3.14159267保留2位小数:" + fomatFloat(3.14559267, 2)+"<br/>");    
        document.write("3.14159267保留1位小数:" + fomatFloat(3.15159267, 1)+"<br/>");    
            
        document.write("五舍六入  <br/>")  
        document.write("1000.003保留2位小数:" + 1000.003.toFixed(2)+"<br/>");    
        document.write("1000.08保留1位小数:" + 1000.08.toFixed(1)+"<br/>");    
        document.write("1000.04保留1位小数:" + 1000.04.toFixed(2)+"<br/>");    
        document.write("1000.05保留1位小数:" + 1000.05.toFixed(3)+"<br/>");    
            
        document.write("科学计数  <br/>")  
        document.write(3.1415+"科学技术后:"+3.1415.toExponential(2)+"<br/>");    
        document.write(3.1455+"科学技术后:"+3.1455.toExponential(2)+"<br/>");    
        document.write(3.1445+"科学技术后:"+3.1445.toExponential(2)+"<br/>");    
        document.write(3.1465+"科学技术后:"+3.1465.toExponential(2)+"<br/>");    
        document.write(3.1665+"科学技术后:"+3.1665.toExponential(1)+"<br/>");    
        document.write("精确到n位,不含n位  <br/>")  
        document.write("3.1415精确到小数点第2位" + 3.1415.toPrecision(2)+"<br/>");    
        document.write("3.1455精确到小数点第3位" + 3.1465.toPrecision(3)+"<br/>");    
        document.write("3.1445精确到小数点第2位" + 3.1415.toPrecision(2)+"<br/>");    
        document.write("3.1465精确到小数点第2位" + 3.1455.toPrecision(2)+"<br/>");    
        document.write("3.166592679287精确到小数点第5位" + 3.141592679287.toPrecision(5)+"<br/>");    
    </script>    
    <body>  
    <input type="number" id="Score" placeholder="需要精确的小数" />  <input type="number" id="x" placeholder="精确位数" /> <br/>
    <button id="btn1">保留2位toDecimal</button>
    <button id="btn2">强制保留2位toDecimal2</button>
    <button id="btn3">保留fomatFloat</button>
    <button id="btn4">保留位toFixed</button>
    <button id="btn5">保留位toPrecision</button>


    <p id="show"></p>


    <script type="text/javascript">
        $(document).ready(function(){
            var re;
            var num;
            var x;
            $("#btn1").click(function(){
                num=$("#Score").val();
                re= toDecimal(num);
                $("#show").html(re);
            });


            $("#btn2").click(function(){
                num=$("#Score").val();
                re= toDecimal2(num);
                $("#show").html(re);
            })


            $("#btn3").click(function(){
                num=$("#Score").val();
                x=$("#x").val();
                re= fomatFloat(num,x);
                $("#show").html(re);
            })


            $("#btn4").click(function(){
                num=$("#Score").val();
                x=$("#x").val();
                re= num.toFixed(x);
                $("#show").html(re);
            })


            $("#btn5").click(function(){
                num=$("#Score").val();
                x=$("#x").val();
                re= num.toPrecision(x);
                $("#show").html(re);
            })
        })
    </script>
    </body>  
    </html> 

    展开全文
  • JS保留小数方法

    2020-01-27 03:24:50
    js保留小数的方法如下:(以保留两位为例) 1、toFixed()方法 需注意,保留两位小数,将数值类型的数据改变成了字符串类型 // 1. 四舍五入 var num = 1.7321; num = num.toFixed(2); console.log(num); //1.73 ...

    js保留小数的方法如下:(以保留两位为例)

    1、toFixed()方法

    需注意,保留两位小数,将数值类型的数据改变成了字符串类型

    // 1. 四舍五入
    var num = 1.7321;
    num = num.toFixed(2);
    console.log(num);            //1.73
    console.log(typeof num);     //string

    2、Math.floor(),不四舍五入 ,向下取整

         Math.ceil() , 不四舍五入,向上取整

    注意,不改变数据类型

    // 2. 不四舍五入 向下取整
    num = Math.floor(num * 100) / 100;
    console.log(num);            //1.73
    console.log(typeof num);     // number

    3、字符串匹配

    注意,先将数据转换为字符串,最后再转为数值类型

    // 3. 不四舍五入 字符串匹配再转换
    num = Number(num.toString().match(/^\d+(?:\.\d{0,2})?/));
    console.log(num);           //1.73
    console.log(typeof num);    // number

    4、四舍五入保留2位小数(若第二位小数为0,则保留一位小数)

    注意,数据类型不变

    //4.四舍五入保留2位小数(若第二位小数为0,则保留一位小数)  
            function keepTwoDecimal(num) {  
                 var result = parseFloat(num);  
                 if (isNaN(result)) {  
                     alert('传递参数错误,请检查!');  
                     return false;  
                 }  
                 result = Math.round(num * 100) / 100;  
                 return result;  
            };
             keepTwoDecimal(num);
             console.log(num);            //1.73
             console.log(typeof num);     //number

    5、四舍五入保留2位小数(不够位数,则用0替补)

    注意,数据类型变为字符串类型

    //5.四舍五入保留2位小数(不够位数,则用0替补)  
            function keepTwoDecimalFull(num) {  
                 var result = parseFloat(num);  
                 if (isNaN(result)) {  
                     alert('传递参数错误,请检查!');  
                     return false;  
                 }  
                 result = Math.round(num * 100) / 100;  
                 var s_x = result.toString(); //将数字转换为字符串
                 
                 var pos_decimal = s_x.indexOf('.'); //小数点的索引值
                 
    
                 // 当整数时,pos_decimal=-1 自动补0  
                 if (pos_decimal < 0) {  
                     pos_decimal = s_x.length;  
                     s_x += '.';  
                 }
    
                 // 当数字的长度< 小数点索引+2时,补0  
                 while (s_x.length <= pos_decimal + 2) {  
                     s_x += '0';  
                 }  
                 return s_x;  
            }  
    
             console.log(keepTwoDecimalFull(120.5)); //120.50
             console.log(typeof keepTwoDecimalFull(120.5)); //string
             console.log(keepTwoDecimalFull(1.7321)); //1.73
             console.log(typeof keepTwoDecimalFull(1.7321)); //string

     

     

    展开全文
  • 问:为啥写JavaScript的去尾法,网上有一大堆“JS保留小数 去尾法 进一法 四舍五入法”不够我抄的吗? 答:网上找的那段代码,经过一段时间的使用后,发现js浮点数运算不精确,比如将39.8保留两位小数,居然变成了39...
  • vue js 保留小数

    2018-11-13 14:35:00
    toFixed(number,fractionDigits ){ //number 保留小数数 //fractionDigits 保留小数位数 var times = Math.pow(10, fractionDigits); var roundNum...
  • js 保留小数

    2020-03-10 22:59:07
    //四舍五入 const n = 1.2345 console.log(n.toFixed(2)) //1.23
  • js保留小数方法

    2016-09-05 17:58:54
    * num保留的数字,字符串都可以, * digit 保留的位数 * 示例 console.log(formatNum(1654.4544,2)) print = 1654.45 ; * 联系QQ 356671808 */ function formatNum(num,digit){  str = ''
  • js保留小数方法总结

    2019-09-29 16:56:02
    4、保留y位小数,并且去掉小数点后面多余的0 function toDecimal ( x , y ) { var f = parseFloat ( x ) ; var s = f . toString ( ) ; if ( s . indexOf ( '.' ) > - 1 ) { var rs = ...
  • 数字转千分位 js 保留小数

    千次阅读 2018-04-30 11:58:14
    保留原有形式,有小数点的保留小数位,整型的依然返回整型(String)formatData(num) { num = num + ''; if (!num.includes('.')) { num += '.' } return num.replace(/(\d)(?=(\d{3})+\.)/g, function($0, $1)...
  • js保留小数后几位

    千次阅读 2018-10-23 09:43:50
    https://www.jb51.net/article/134067.htm
  • js保留小数及整形小数的转换

    千次阅读 2012-10-26 10:55:59
    1.保留小数 var intercept=$.trim($(this).text());  var num=new Number(intercept);  $(this).text(num.toFixed(4)); toFixed(4)表示保留四位小数,toFixed()只能对Number类型生效,所以要将string类型...
  • @decimal:所保留小数位个数 const formatDecimal = (val, decimal) => { val = val.toString(); let index = val.indexOf("."); if (index !== -1) { val = val.substring(0, decimal + index + 1); } ...
  • js 保留小数位函数

    千次阅读 2011-12-08 11:16:24
    function roundFun(numberRound,roundDigit){ var digit; digit=1; digit=Math.pow(10,roundDigit) return (Math.round(numberRound*digit)/digit); }alert(roundFun(3.1285,2))
  • var a=9; var b=123; var c=(a/b).toFixed(2);
  • 今天业务突然发现10.155这个数字四舍五入保留两位小数有问题,结果是10.15,没有四舍五入。当时用的是toFixed(2)方法,查了一个文档发现js精度计算有问题导致的。 2.解决问题 后来在网上查了一些资料,找到了一个...
  • //保留小数 function toFixed(n, d) { if (d <= 0) { return n; } else { let radix = 10 ** d; let temp = Math.round(n * radix) / radix; return temp; } }

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,119
精华内容 847
关键字:

js保留小数