点击查看代码
添加千分位
function addThousandSeparator(num, separator = ",") {
return num.toString().replace(/\B(?=(\d{3})+(?!\d))/g, separator);
}
num.toString(): 将输入的数字 num 转换为字符串,以便后续处理。
.replace(/\B(?=(\d{3})+(?!\d))/g, separator): 这里使用了正则表达式进行替换操作。具体解释如下:
\B: 表示非单词边界,用于匹配不在单词边界处的位置。
(?=(\d{3})+(?!\d)): 使用正向预查来匹配每三位数字的位置,但不匹配末尾不足三位的数字。
(\d{3})+: 匹配连续的三位数字。
separator: 作为参数传入的分隔符,默认为 ,。
g: 表示全局匹配,即匹配所有满足条件的位置。
去掉千分位
function deleteThousandSeparator(numberString, separator = ",") {
return numberString.replace(new RegExp(separator, "g"), "");
}