js中四舍五入保留两位效数,js中将Number转换成字符类型

今天在写代码的时候遇到了点问题,特意记下,以免忘记!
四舍五入方法:

 // num为传入的值,n为保留的小数位
function fomatFloat(num,n){
var f = parseFloat(num);
if(isNaN(f)){
return false;
}
f = Math.round(num*Math.pow(10, n))/Math.pow(10, n); // n 幂
var s = f.toString();
var rs = s.indexOf('.');
//判定如果是整数,增加小数点再补0
if(rs < 0){
rs = s.length;
s += '.';
}
while(s.length <= rs + n){
s += '0';
}
return s;
}

在js文件中做简单的加减乘除四则运算,一定要注意:先将字符类型转换成Number类型,在最后的输出值的时候在转换成字符类型(调用的是toString()方法),如果不这样做的话,是会报错的。

    var tAmnt= AmntCurrencyGrid.getRowColData(i,2);//责任原保额
var tPrem=AmntCurrencyGrid.getRowColData(i,3);//责任原保费
var tChangeAmnt=AmntCurrencyGrid.getRowColData(i,4);//责任调整后保额
var tChangePrem=Number(tPrem)*Number(tChangeAmnt)/Number(tAmnt);
tChangePrem=fomatFloat(tChangePrem,2);
AmntCurrencyGrid.setRowColData(i,5,tChangePrem.toString());
上一篇:oracle转Mysql中,varchar2(10)和number应该转换为什么类型?


下一篇:css的定位,relative/absolute/fixed的用法