javascript-保留2位小数函数方法
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位小数函数方法的更多相关文章
- JavaScript 保留两位小数
以下我们将为大家介绍 JavaScript 保留两位小数的实现方法: 四舍五入 以下处理结果会四舍五入: var num =2.446242342; num = num.toFixed(2); // ...
- javascript保留两位小数
原文地址http://blog.csdn.net/he20101020/article/details/8503308 <script type="text/javascrip ...
- ToString()格式和用法大全,C#实现保留两位小数的方法
C,货币,2.5.ToString("C"),¥2.50.D,十进制数,25.ToString("D5"),00025.E,科学型,25000.ToString ...
- js保留两位小数的方法
js保留两位小数的方法如下 1.toFixed()方法 需注意,保留两位小数,将数值类型的数据改变成了字符串类型 2.Math.floor(),不四舍五入 ,向下取整 注意,不改变数据类型 3.字符串 ...
- js取整并保留两位小数的方法
js 四舍五入函数 toFixed(),里面的参数 就是保留小数的位数.注意 toFixed()方法只针对数字类型,如果是字符类型需要使用Number()等方法先转换数字类型再使用 document. ...
- [转] javascript 保留两位小数 (且不四舍五入)
本文转自:https://blog.csdn.net/qq_40171039/article/details/79729503 保留两位小数且不四舍五入: 方法一: var a = 2.461; va ...
- 梁勇(Danniel Liang) java教材例题:java程序购买额按税率求营业税 java中数值保留2位小数的方法
package com.swift; import java.util.Scanner; public class PurchaseTaxDecimalsTwo { public static voi ...
- C# 实现保留两位小数的方法
1.Math.Round(0.333333,2);//按照四舍五入的国际标准 2.double dbdata=0.335333; string str1=String.Format("{0: ...
- Java的4种保留4位小数的方法(转)
上网查到的4种方法 其实刚学java……谁知道java里面的这么多方法啊……java里面重要的包本来就不少啊 ……跟我学粤语的小徒弟问我的东东…… 写两种方式……直接在main函数里面写的.还有就是利 ...
随机推荐
- curl常用传参方式
1.传header参数curl --header 'Token:40d7c342c110414888cc2a0e1284c636' "127.0.0.1/api/user/baseInfo& ...
- MINA线程模型
一.三种工作线程: (一) Acceptor thread: 该线程的作用是接收客户端的连接,并将客户端的连接导入到IOProcessor线程模型中.Acceptor thread在调用了Accep ...
- Spark版本说明
Source code: Spark 源码,需要编译才能使用,另外 Scala 2.11 需要使用源码编译才可使用 Pre-build with user-provided Hadoop: &qu ...
- [转] openwrt关闭调试串口
转自: http://wiki.wrtnode.com/index.php?title=Release_UART/zh-cn 由于mt7620n只有一个UART lite接口,在原生的OpenWrt中 ...
- php统计中英文混合的文章字数
function ccStrLen($str) #计算中英文混合字符串的长度 { $ccLen=0; $ascLen=strlen($str); $ind=0; $hasCC=ereg("[ ...
- sort a given string
my solution: function order(words){ var splitToArr = words.split(' '), len = splitToArr.length, newA ...
- Nuke中新建线程的方法
最近维护合成部门的nuke工具包,发现不少工具的使用方法都很个人化,没有说明文档.这也导致artist在使用工具的时候比较感性,调整参数的时候缺少前后逻辑,长此以往,artist会产生这种意识:只要最 ...
- Wsus 清理的计划任务
<# Get-ExecutionPolicy 默认为 RemoteSigned 该签名设置 Set-ExecutionPolicy Unrestricted 添加到排除 powershell - ...
- django1.10.3下admin后台管理老是显示object
在设置了一个新models phone book后,admin管理显示数据名称都是object 尝试为model重写__unicode__方法后无效,经查询,在py3环境中,需要重写__str__方法 ...
- git add , git commit 添加错文件 撤销
1. git add 添加 多余文件 这样的错误是由于, 有的时候 可能 git add . (空格+ 点) 表示当前目录所有文件,不小心就会提交其他文件 git add 如果添加了错误的文件的话 撤 ...