php和js保留小数后面的位数四舍五入和非四舍五入
日期:2020-06-18
来源:程序思维浏览:1489次
今天来说说php和js如何保留后面的n位小数,在实际开发中四舍五入很简单有自己的系统函数,但是非四舍五入呢?
javascript版:
比如
a=155005;
需要求 a 是多少万元....保留3位小数,且去除无效0...
字符串循环很累...
有个比较简单的操作
let result = a / 10000;
result = parseFloat( result.toFixed(3) ).toString() + "万元";
// result = "15.501万元" (当然会四舍五入啦...你要想不四舍五入的话看下面)
// ----------不要四舍五入---------(诶需求辣么多...真烦)
result = a / 10000;
// 多留一位小数
result = parseFloat(result.toFixed(4)).toString();
// 如果位数符合长度,就切掉最后一位 || 当然位数不足那就不切啦...
result = result.length >4 ?
(parseFloat(result.substring(result.length - 1, 0)) + "万元") :
(result + "万元");
// result = "15.5万元"
php版:
$num = 1314179.1314;
1、利用 round() 对浮点数进行四舍五入
echo round($num,2).' '; // 1314179.13
2、利用 sprintf() 格式化字符串
$format_num = sprintf("%.2f",$num);
echo $format_num.' '; // 1314179.13
3、利用 number_format() 千位分组来格式化数字
echo number_format($num, 2).' '; // 1,314,179.13
//或者
echo number_format($num, 2, '/', '#').' '; // 1#314#179/13
注意:函数 number_format() 支持一个、两个或四个参数(不是三个)。
javascript版:
比如
a=155005;
需要求 a 是多少万元....保留3位小数,且去除无效0...
字符串循环很累...
有个比较简单的操作
let result = a / 10000;
result = parseFloat( result.toFixed(3) ).toString() + "万元";
// result = "15.501万元" (当然会四舍五入啦...你要想不四舍五入的话看下面)
// ----------不要四舍五入---------(诶需求辣么多...真烦)
result = a / 10000;
// 多留一位小数
result = parseFloat(result.toFixed(4)).toString();
// 如果位数符合长度,就切掉最后一位 || 当然位数不足那就不切啦...
result = result.length >4 ?
(parseFloat(result.substring(result.length - 1, 0)) + "万元") :
(result + "万元");
// result = "15.5万元"
php版:
$num = 1314179.1314;
1、利用 round() 对浮点数进行四舍五入
echo round($num,2).' '; // 1314179.13
2、利用 sprintf() 格式化字符串
$format_num = sprintf("%.2f",$num);
echo $format_num.' '; // 1314179.13
3、利用 number_format() 千位分组来格式化数字
echo number_format($num, 2).' '; // 1,314,179.13
//或者
echo number_format($num, 2, '/', '#').' '; // 1#314#179/13
注意:函数 number_format() 支持一个、两个或四个参数(不是三个)。
精品好课