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. IT痴汉的工作现状11-程序猿的烦恼

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/lincyang/article/details/25535181         痴汉们事实上是非常 ...

  2. 一般化数值算法(accumluate,inner_product,partial_sum,adjacent_difference)

    accumulate template<class InputIterator, class T> T accumulate( InputIterator _First, InputIte ...

  3. python 高阶函数学习, map、reduce

    一个函数可以接收另一个函数作为参数,这样的函数叫做高阶函数. 函数map(): map()函数接收两个参数,一个是函数,一个是Iterable, map把函数作用于序列的每一个元素,并把结果作为Ite ...

  4. 将VirtualBox里安装的虚拟机在后台运行方法(在状态栏隐藏窗口)

    由于工作和学习需要,经常要开一个虚拟机开测试和开发,虚拟机我选择Oracle公司的VirtualBox(用了几年了,感觉不错的一款产品),经常开着这个窗口感觉有些浪费资源,这样隐藏窗口就在需求了. 将 ...

  5. 没有了CommonsChunkPlugin,咱拿什么来分包(译)

    webpack 4 移除 CommonsChunkPlugin,取而代之的是两个新的配置项(optimization.splitChunks 和 optimization.runtimeChunk). ...

  6. openstack 开启 spice远程连接

    openstack 默认开的远程控制是novnc 这里是用kolla初建的openstack nova_console vi /etc/kolla/globals.yml ... # Valid op ...

  7. laravel多条件查询(and,or嵌套查询)

    原生sql select * from homework where (id between 1 and 10 or id between 50 and 70) and complete = 1 an ...

  8. 安装ES

    ES环境搭建 1.创建用户组2.目录授权3.安装jdk4.vi /etc/sysctl.confvm.map_maxcount=65535vm.swappiness=5 sysctl -p 生效5.修 ...

  9. Linux中硬盘物理扇区与文件系统文件对应关系(转)

    1               概述 系统读写文件过程中,如下面内核打印信息,报告读写某个扇区错误.那么我们如何能够通过sector找到读写哪个文件错误? kernel: end_request: I ...

  10. bzoj 4709 [Jsoi2011]柠檬——单调栈二分处理决策单调性

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4709 题解:https://blog.csdn.net/neither_nor/articl ...