在做前端页面时遇到一个 问题 ,一个input中的数据计算后都变成了科学计数法的形式显示在前端,这样不允许的。在百度找了一堆的博客什么的,
发现都是抄来抄去,还是错误的,解决不了问题,果断用google搜索了一把。一下子就找到了一个解决方法。百度有点坑。
/科学计数法转换数值/
function scientificToNumber(num) {
var str = num.toString();
var reg = /^(\d+)(e)([-]?\d+)$/;
var arr, len,
zero = ‘’;
/*6e7或6e+7 都会自动转换数值*/
if (!reg.test(str)) {
return num;
} else {
/*6e-7 需要手动转换*/
arr = reg.exec(str);
len = Math.abs(arr[3]) - 1;
for (var i = 0; i < len; i++) {
zero += '0';
}
return '0.' + zero + arr[1];
}
}