2021年9月5日

js截取保留指定位数小数点代码


来自于一个财金金融平台项目切图时候遇到的问题,金融平台有大量的ajax数据联掉,数据处理的工作,比如需要截取数字,保留5位小数点,这本身并不是复杂的事情num.toFixed(5) 就可以解决,,但是仍然需要很多判断,比如:

1,判断小数点后位数,是否大于5位,大于则截取,小于则不截取

2,判断是否整数,整数不截取(否则会把20截成 20.0000,也不可取)

3,截取之前先转字符串

代码如下:



/*2021.9.3*/
function formatNum(num,symbol=null){

var JPSymbol = ['AUDJPY','EURJPY','GBPJPY','USDJPY'];
num = Number(num);
//console.log(num);

var a = (num.toString()).indexOf(".");

if(a != -1) {
//alert("含有小数点");
var b = num.toString().split(".")[1].length;
//console.log(b);
//小数点大于5位

//涉及日元的品种为小数点后3位,其他品种为小数点后5位
if($.inArray(symbol, JPSymbol)==-1){
if(b>5){
return num.toFixed(5);
}

}
else{
if(b>3){
return num.toFixed(3);
}
}


}
return num;
}
//console.log(formatNum('2000.2'));

标签:,

微信扫一扫二维码访问


16年前端经验
加微信好友直接沟通
了解《我的十年》