uniapp 数字加千分位并且保留两位小数

运用手写过滤器 直接使用方法在ios和android上可能会有BUG

先建立一个过滤器filter.js文件

function unitConverter(num) {if (num) {num = num.toString().split("."); // 分隔小数点var arr = num[0].split("").reverse(); // 转换成字符数组并且倒序排列var res = [];for (var i = 0, len = arr.length; i < len; i++) {if (i % 3 === 0 && i !== 0) {res.push(","); // 添加分隔符}res.push(arr[i]);}res.reverse(); // 再次倒序成为正确的顺序if (num[1]) {if (num[1].length < 2) {// 如果有小数的话添加小数部分res = res.join("").concat("." + num[1] + '0');} else if (num[1].length > 2) {let data = num[1].substring(0, 2)// 如果有小数的话添加小数部分res = res.join("").concat("." + data);} else {res = res.join("").concat("." + num[1]);}} else {res = res.join("").concat("." + '00');}} else {res = '0.00'}return res;
}
export default {unitConverter
}

然后在main.js中全局引入

import filters from './utils/filter'  //导入过滤器文件
Object.keys(filters).forEach(key=>{    //通过Object.key方法取出过滤器中导出的每个方法并挂在vue.filter上Vue.filter(key,filters[key])
})

在界面.vue文件里调用

{{contractAmount|unitConverter}}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部