function zero(num){
var str=num.toString();
if(str.indexOf(".")==-1){
return num+'.00';
}else{
//整个数字的长度
var len=str.length;
//整数部分长度
var integerLen=str.indexOf('.');
if(len>(integerLen+2)){
return str.slice(0,integerLen+3);
}else if(len==(integerLen+2)){
return str+'0';
}else{
return str;
}
}
}

保留2位小数函数方法

 
 console.log(zero(11))//11.00
console.log(zero(11.0))//11.00
console.log(zero(11.00))//11.00
console.log(zero(11.001))//11.00
console.log(zero(11.1))//11.10
console.log(zero(11.00001))//11.00

保留3位小数方法

 var num= 343232343.00001;
var num1= 343232343.01;
var num2= 343232343.120;
var num3= 343232343.12;
var num4= 343232343.1;
var num5= 343232343;
console.log(zero(num));//343232343.000
console.log(zero(num1));//343232343.010
console.log(zero(num2));//343232343.120
console.log(zero(num3));//343232343.120
console.log(zero(num4));//343232343.100
console.log(zero(num5));//343232343.000
 function zero(num){
var str=num.toString();
if(str.indexOf(".")==-1){
return num+'.000';
}else{
//整个数字的长度
var len=str.length;
//整数部分长度
var integerLen=str.indexOf('.');
if(len>(integerLen+4)){
return str.slice(0,integerLen+4);
}else if(len<(integerLen+4)){
var n='';
if(len==integerLen+3){
for(var i=0;i<1;i++){
n+='0';
}
} else {
for(var i=0;i<2;i++){
n+='0';
}
}
return str+n;
}else if(len==(integerLen+4)){
return str;
}
}
}

最近有空又写出一个更加使用的保留小数位数:

 Number.prototype.zero=function(n){
//数字转成字符串以便进行下一步的处理
var str=this+'';
//没有小数点
if(str.indexOf('.')==-1){
return n <= 0 ? str : str+'.'.padEnd(str.length+n-1,'0')
}else{
//有小数点 分 小于 等于 大于 //找到小数点的索引值
var dotIndex=str.indexOf('.')
//整数部分加小数点一共的长度
var intDotLen=dotIndex+1;
//存下字符串的长度
var totalLen=str.length;
//获取小数位数
var dotLen=totalLen-intDotLen;
// console.log(dotIndex+','+intDotLen+','+totalLen+','+dotLen) if(dotLen<n){
return n <= 0 ? str.slice(0,intDotLen-1) : str.padEnd(intDotLen+n,'0')
}else if(dotLen==n){ return n <= 0 ? tr.slice(0,intDotLen-1) : str
}else if(dotLen>n){
// console.log(str.slice(0,intDotLen+n))
return n <= 0 ? str.slice(0,intDotLen-1) : str.slice(0,intDotLen+n)
}
}
}
// var a=11;
// var a=11.0;
// var a=11.00;
// var a=11.001;
// var a=11.1;
// var a=11.00001; console.log(a.zero(-1))
console.log(a.zero(0))
console.log(a.zero(1))
console.log(a.zero(2))
console.log(a.zero(3))
console.log(a.zero(4))

javascript-保留2位小数函数方法的更多相关文章

  1. JavaScript 保留两位小数

    以下我们将为大家介绍 JavaScript 保留两位小数的实现方法: 四舍五入 以下处理结果会四舍五入: var num =2.446242342; num = num.toFixed(2); // ...

  2. javascript保留两位小数

      原文地址http://blog.csdn.net/he20101020/article/details/8503308   <script type="text/javascrip ...

  3. ToString()格式和用法大全,C#实现保留两位小数的方法

    C,货币,2.5.ToString("C"),¥2.50.D,十进制数,25.ToString("D5"),00025.E,科学型,25000.ToString ...

  4. js保留两位小数的方法

    js保留两位小数的方法如下 1.toFixed()方法 需注意,保留两位小数,将数值类型的数据改变成了字符串类型 2.Math.floor(),不四舍五入 ,向下取整 注意,不改变数据类型 3.字符串 ...

  5. js取整并保留两位小数的方法

    js 四舍五入函数 toFixed(),里面的参数 就是保留小数的位数.注意 toFixed()方法只针对数字类型,如果是字符类型需要使用Number()等方法先转换数字类型再使用 document. ...

  6. [转] javascript 保留两位小数 (且不四舍五入)

    本文转自:https://blog.csdn.net/qq_40171039/article/details/79729503 保留两位小数且不四舍五入: 方法一: var a = 2.461; va ...

  7. 梁勇(Danniel Liang) java教材例题:java程序购买额按税率求营业税 java中数值保留2位小数的方法

    package com.swift; import java.util.Scanner; public class PurchaseTaxDecimalsTwo { public static voi ...

  8. C# 实现保留两位小数的方法

    1.Math.Round(0.333333,2);//按照四舍五入的国际标准 2.double dbdata=0.335333; string str1=String.Format("{0: ...

  9. Java的4种保留4位小数的方法(转)

    上网查到的4种方法 其实刚学java……谁知道java里面的这么多方法啊……java里面重要的包本来就不少啊 ……跟我学粤语的小徒弟问我的东东…… 写两种方式……直接在main函数里面写的.还有就是利 ...

随机推荐

  1. openresty 集成lua-resty-mail +smtp2http 扩展灵活的mail 服务

    lua-resty-mail 是一个不错的openresty mail 扩展,我们可以用来进行邮件发送,支持附件功能 smtp2http 是一个smtp 服务,可以将smtp 请求数据转换为http ...

  2. Linux期末复习题

    版权声明: https://blog.csdn.net/u014483914/article/details/36622451 1.More和less命令的差别         More命令通经常使用 ...

  3. BinaryReader 自己写序列化

    听说过BinaryReader和BinaryWriter吗? 序列化无非就是网络通信时所使用的传输数据的方式,而BinaryWriter可以将数据以二进制的方式写入到流当中.比如Int32型的1用Bi ...

  4. node api 之:Buffer

    在 ECMAScript 2015 引入 TypedArray 之前,JavaScript 语言没有读取或操作二进制数据流的机制. Buffer 类被引入作为 Node.js API 的一部分,使其可 ...

  5. hanlp在Python环境中的安装失败后的解决方法

    Hanlp是由一系列模型与算法组成的javag工具包,目标是普及自然语言处理再生环境中的应用.有很多人在安装hanlp的时候会遇到安装失败的情况,下面就是某大神的分享的在python环境中安装失败的解 ...

  6. Sql Server Report Service 的部署问题(Reporting Service 2014為什麼不需要IIS就可以運行)

    http://www.cnblogs.com/syfblog/p/4651621.html Sql Server Report Service 的部署问题 近期在研究SSRS部署问题,因为以前也用到过 ...

  7. 在windows server上配置java jdk后,可能要些时间生效。

    特别是程序调用java写的bat脚本时.

  8. 前端模拟后台返回数据之Mockjs

    一.官方文档: https://github.com/nuysoft/Mock/wiki/Syntax-Specification 例子:http://mockjs.com/examples.html ...

  9. .NET使用HttpRuntime.Cache设置程序定时缓存

    第一步:判断读取缓存数据 #region 缓存读取 if (HttpRuntime.Cache["App"] != null) { return HttpRuntime.Cache ...

  10. 外观(Facade)模式

    外观模式:为子系统中的一组接口提供一个一致的界面.此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用 在软件开发中,有时候为了完成一项较为复杂的功能,一个客户类需要和多个业务类交互,而这些需 ...