JavaScript格式化字符串為指定長度
在前端開發的時候,我們時常會對給定的字符串做格式化處理,比如這里提及的把給定的字符串格式化為指定長度的字符串(長度過長的會截斷,長度不足的字符串會在后面補全指定的字符)。
代碼實現
function formatStringLen(strVal, len, padChar){
padChar = padChar || "*";
if (!strVal) {
return padChar.repeat(len);
} else {
const strLen = strVal.length;
if (strLen > len){
return strVal.substring(0, len);
} else if (strLen < len){
return strVal.padEnd(len, padChar);
}else{
return strVal;
}
}
}
此方法默認為3個參數:
- strVal: 需要格式化的字符串
- len(純數字):格式化后字符串的長度
- padChar(非必需):長度不足的時候補全用的字符,如果沒有給定值默認使用*****補全
測試代碼和測試結果:
//長度不足補全為默認字符
console.log("長度不足補全為默認字符: " + formatStringLen("ab", 8));
//長度不足補全為指定字符
console.log("長度不足補全為指定字符: " + formatStringLen("abc", 8, "sp"));
//長度過長自動截斷
console.log("長度過長自動截斷: " + formatStringLen("abcdefghijklmn", 8, "sp"));
//長度與指定長度相等返回原字符串
console.log("長度與指定長度相等返回原字符串: " + formatStringLen("abcdefgh", 8, "sp"));

