整数补零(或补别的字符)
String.prototype.padStart() - JavaScript | MDN
可以通过padStart和padEnd实现左/右开始填充指定字符达到指定长度。
const str1 = '8';
console.log(str1.padStart(9, '0')); // "000000008"
const fullNumber = '123456789';
const maskedNumber = fullNumber.slice(-3).padStart(fullNumber.length, '*');
console.log(maskedNumber);// ******789
const maskedNumber2 = fullNumber.slice(0,3).padEnd(fullNumber.length, '*');
console.log(maskedNumber2);// 123******
小数补零
参考我之前的一篇博客
JS中的Math.trunc()以及浅谈js计算失精常用函数_devwolf的博客-CSDN博客_js trunc
console.log((5).toPrecision(4)); // "5.000",如果仅提供证整数,则该整数需要加括号
需要特别注意的是,toPrecision()是四舍六入五成双,如果对精度有定制要求,可以尝试如下修改
//toPrecision是四舍六入五成双
console.log(5.555.toPrecision(3)); // "5.55"
//要想四舍五入得手动改造
const demo = (data) =>{
let _data = Number(data);
if(isNaN(_data)){
return false;
}
let intLength = Math.trunc(_data).toString().length;
let fullLength = intLength + 2;//小数点保留2位,算出总位数
let newData = Math.round(_data * 100) / 100;
return Number(newData).toPrecision(fullLength)
}
console.log(demo(5.555));// 5.56
console.log(demo(5.5));// 5.50