js千分位分隔,数字货币化方法学习记录
2020-12-18 08:33
标签:cti 货币 highlight 直接 return ntc target 部分 ace js千分位分隔,数字货币化—4种方法(含正则) 正则校验 转载于:https://blog.csdn.net/Kindergarten_Sir/article/details/110382037 js千分位分隔,数字货币化方法学习记录 标签:cti 货币 highlight 直接 return ntc target 部分 ace 原文地址:https://www.cnblogs.com/smileZAZ/p/14070392.html方法1-整数货币化
// 整数货币化
function intCurrency(num) {
var reg = new RegExp("^[\\d]+[\\d|.]+$", ‘g‘)
if (!reg.test(num)) {
return "只能为整数或小数!";
}
var numString = parseInt(num).toString();
var len = numString.length;
if (len 0) {
return numString.slice(0, n) + "," + numString.slice(n, len).match(/\d{3}/g).join(",");
} else {
return numString.slice(n, len).match(/\d{3}/g).join(",");
}
}
console.group("------------整数货币化")
console.log(intCurrency("abs"))
console.log(intCurrency("0"))
console.log(intCurrency("10"))
console.log(intCurrency("100"))
console.log(intCurrency("1000"))
console.log(intCurrency("10000"))
console.log(intCurrency("100000"))
console.log(intCurrency("1000000"))
console.log(intCurrency("10000000"))
console.log(intCurrency("100000000"))
console.log(intCurrency("1000000000"))
console.log(intCurrency("1000000000.0"))
console.log(intCurrency("1000000000.00"))
console.log(intCurrency("1000000000.000"))
方法2-小数货币化
// 整数部分
function intCurrency(num) {
if (num === undefined) {
return ‘‘;
}
var len = num.length;
if (len 0) {
return num.slice(0, n) + "," + num.slice(n, len).match(/\d{3}/g).join(",");
} else {
return num.slice(n, len).match(/\d{3}/g).join(",");
}
}
// 小数部分
function decimalCurrency(num) {
if (num === undefined) {
return ‘‘;
}
var len = num.length; // 小数部分长度
if (len 0) { // 位数不是3的倍数
return num.slice(0, len - n).match(/\d{3}/g).join(‘,‘) + ‘,‘ + num.slice(len - n);
} else {
return num.slice(0, len - n).match(/\d{3}/g).join(‘,‘)
}
}
// 货币化
function currency(num) {
var integerPart; // 整数部分
var decmialPart; // 小数部分
num = num.toString();
if (num.includes(".")) {
integerPart = num.split(‘.‘)[0];
decmialPart = num.split(‘.‘)[1];
} else {
integerPart = num;
}
return intCurrency(integerPart) + (decmialPart !== undefined ? (‘.‘ + decimalCurrency(decmialPart)) : ‘‘);
}
console.group("------------整数或小数货币化")
console.log(currency("0"))
console.log(currency("10"))
console.log(currency("100"))
console.log(currency("1000"))
console.log(currency("10000"))
console.log(currency("100000"))
console.log(currency("1000000"))
console.log(currency("10000000"))
console.log(currency("100000000"))
console.log(currency("1000000000"))
console.log(currency("1000000000.0"))
console.log(currency("1000000000.00"))
console.log(currency("1000000000.000"))
console.log(currency("1000000000.0000"))
console.log(currency("1000000000.00000"))
方法3-整数正则货币化1
// 直接使用正则
function currency(num) {
num = parseInt(num);
return num.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ‘,‘);
}
console.group("------------取整数,正则货币化1")
console.log(currency("0"))
console.log(currency("10"))
console.log(currency("100"))
console.log(currency("1000"))
console.log(currency("10000"))
console.log(currency("100000"))
console.log(currency("1000000"))
console.log(currency("10000000"))
console.log(currency("100000000"))
console.log(currency("1000000000"))
console.log(currency("1000000000.0"))
console.log(currency("1000000000.00"))
console.log(currency("1000000000.000"))
console.log(currency("1000000000.0000"))
console.log(currency("1000000000.00000"))
方法4-整数正则货币化2
// 直接使用正则
function currency(num) {
num = parseInt(num);
return num.toString().replace(/(?=(\B)(\d{3})+$)/g, ‘,‘);
}
console.group("------------取整数,正则货币化2")
console.log(currency("0"))
console.log(currency("10"))
console.log(currency("100"))
console.log(currency("1000"))
console.log(currency("10000"))
console.log(currency("100000"))
console.log(currency("1000000"))
console.log(currency("10000000"))
console.log(currency("100000000"))
console.log(currency("1000000000"))
console.log(currency("1000000000.0"))
console.log(currency("1000000000.00"))
console.log(currency("1000000000.000"))
console.log(currency("1000000000.0000"))
console.log(currency("1000000000.00000"))
// 正整数或小数 /^[0-9]+(\.[0-9]+)?$/g
// 正、负整数或小数,也可不输入正负 /^(\+|-)?\d+(\.\d+)?$/g
下一篇:HTML 表格和列表的使用
文章标题:js千分位分隔,数字货币化方法学习记录
文章链接:http://soscw.com/index.php/essay/37045.html