该方法原本收集自网络,因作者出处不详,故无法标注来源。
tips: 欢迎认领,认领成功后会把原出处地址附加在文末
话不多说,直接上方法
formatNumByInsertDot(str) { // 原方法对传入参数格式限制默认为number类型
str -= 0; // 这里用隐式转换先转一下数据类型
let newStr = '',
count = 0,
saveStr = JSON.parse(JSON.stringify(str)).toString(),
type = str.toString().indexOf('.');
if (parseFloat(str).toString() != 'NaN') {
if (type == -1) { // 整数
for (var i = saveStr.length - 1; i >= 0; i--) {
if (count % 3 == 0 && count != 0) {
newStr = `${saveStr.charAt(i)},${newStr}`;
} else {
newStr = saveStr.charAt(i) + newStr;
}
count++;
}
str = newStr + '.00';
} else {
for (var i = type - 1; i >= 0; i--) {
if (count % 3 == 0 && count != 0) {
newStr = saveStr.charAt(i) + ',' + newStr;
} else {
newStr = saveStr.charAt(i) + newStr;
}
count++;
}
let arr = saveStr.split('.');
str = newStr + '.' + arr[1];
}
return str;
} else {
// alert('传入值格式非法,无法转换');
console.log('传入值格式非法,无法转换');
return false;
}
}