js
const formatNumber = (num, n = 2) => {
return num.toFixed(n).replace(/(\d)(?=(\d{3})+\.)/g, function($0, $1) {
return $1 + ',';
});
}
微信小程序
1. 新建 tools.wxs 工具文件
/* 价格格式化 补零 与 三位数逗号 参数str可为数字 || 字符串 */
var formatAmount = function (str) {
str = str.toString()
if (!str) return //判空
//如果没有小数 添加两位小数 '.00'
if (str.indexOf('.') === -1) {
str += '.00'
} else {
//如果有判断是否小于11
var decimal = str.split('.')
if (decimal[1] < 11) {
str = decimal[0] + '.' + (decimal[1] + '0')
}
}
//切割数组
//以.分隔为数组
var arr = str.split('.');
var left = arr[0];
//取第一项用正则判断,每隔3位加,
left = left.replace(getRegExp('\B(?=(\d{3})+$)', 'g'), ',')
return left + '.' + arr[1];
}
module.exports = {
formatAmount: formatAmount
}
2. 在test.wxml内引用
<wxs src="../../utils/tools.wxs" module="tools" />
<view class="pay-amount">
<text class="amount-symbol">¥</text>
{{tools.formatAmount(item.payAmount)}}
</view>