javascript-保留2位小数函数方法

Posted 小飞博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript-保留2位小数函数方法相关的知识,希望对你有一定的参考价值。

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>format-number</title>
 6 </head>
 7 <body>
 8     <input type="text" id="input"><input type="text" id="output">
 9 </body>
10 <script>
11 var ipt=document.getElementById(input);
12 var opt=document.getElementById(output);
13 ipt.oninput=function(){
14     opt.value=zero(this.value);
15 }
16 function zero(num){
17     var str=num.toString();
18     if(str.indexOf(".")==-1){//整数
19         return num+".00";
20     }else{
21         var len=str.indexOf(".");
22         if(str.slice(len).length == 2){ //只有1位小数
23             return num+"0"
24         }else if(str.slice(len).length > 3){//小数部分大于2位
25             //整数部分
26             var integer=str.slice(0,len);
27             //需截取到的索引值
28             var resIndex=integer.length+3;
29             //得到截取后的保留了两位小数的字符串
30             var resNumber=str.slice(0,resIndex);
31             //截取到的保留的两位小数
32             var decimal=str.slice(len+1,resIndex);
33             if(decimal=="00"){
34                 return Number(resNumber)+".00";
35             }else{
36                 //再转成数字返回
37                 return Number(resNumber);
38             }
39         }else{//就是有2位小数的数字
40             return num;
41         }
42     }
43 }
44 </script>
45 </html>
1 console.log(zero(11))//11.00
2 console.log(zero(11.0))//11.00
3 console.log(zero(11.00))//11.00
4 console.log(zero(11.001))//11.00
5 console.log(zero(11.1))//11.10
6 console.log(zero(11.00001))//11.00

 

以上是关于javascript-保留2位小数函数方法的主要内容,如果未能解决你的问题,请参考以下文章

javascript关于保留小数点后位数的问题

[js/jq]保留两位小数的问题

如何在js中设定变量值到小数点后两位?

javascript实现保留两位小数的多种方法

怎么保留一位小数?

js 保留小数点2位