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. Survival Shooter 学习

    using UnityEngine; using System.Collections; namespace CompleteProject { /// <summary> /// 摄像机 ...

  2. PADS Logic Ref Des Start Value

    PADS Logic Ref Des Start Value 曾经以为 Mentor 把 PADS Logic 放弃了,没想到还加了一个非常实用的功能. 这个的好处是让元件号可以设置起始编号,方便每一 ...

  3. ThinkPHP3 和 ThinkPHP5 不是一个团队做的

    ThinkPHP3 和 ThinkPHP5 不是一个团队做的 发现流年好幽默. 这个帖子源于一个 ThinkPHP 用户被客户投诉,然后反过来骂 ThinkPHP 垃圾. 不过最后想通了道歉. 开源需 ...

  4. vue-cli、create-react-app 项目如何查看打包分析?

    vue-cli.create-react-app 项目如何查看打包分析? 项目 如何查看打包分析 vue-cli 创建的项目 已经集成 webpack-bundle-analyzer,运行npm ru ...

  5. linux应用之gcc环境的安装

    使用如下两个命令就可把gcc,gcc-c++统统安装 yum -y install gcc yum -y install gcc-c++ 但是用yum install gcc安装gcc编译环境,关于 ...

  6. java 迭代

    迭代器的作用是提供一种方法对一个容器对象中的各个元素进行访问,而又不暴露该对象容器的内部细节. java中的很多容器都实现了Iterable接口,容器中的元素都是可以遍历的. 如下例,list容器中存 ...

  7. Hive 数据类型

    1. hive的数据类型Hive的内置数据类型可以分为两大类:(1).基础数据类型:(2).复杂数据类型2. hive基本数据类型基础数据类型包括: TINYINT,SMALLINT,INT,BIGI ...

  8. 写了一个hiero检查任务渲染结果的脚本

    基本思路是写了一个时间判断函数(postSequence_check)来对比transcode任务提交时间和目标文件夹内文件的修改时间来确定渲染是否成功执行,然后通过Hiero提供的postSeque ...

  9. java.util.ConcurrentModificationException的解决办法

    今天在使用iterator.hasNext()操作迭代器的时候,当迭代的对象发生改变,比如插入了新数据,或者有数据被删除. 编译器报出了以下异常: Exception in thread " ...

  10. Qt应用程序单实例化

    在实际应用中,我们经常需要让应用程序只有一个实例,再打开新的文档或者页面时,只是替换现在的窗口或者新打开一个标签,而不是重新启动一次应用程序.Qt中是否可以做到这样呢,答案是肯定的,因为Qt本身可以直 ...