新增字符串补白
字符串补白即对字符串进行格式化,在首位或末位添加对应的字符。
一、ES5 对 String 补白
示例:实现数字个位数前面用 0 补位。
for (let i = 1; i < 32; i++) {
console.log(i >= 10 ? i : `0${i}`)
}
// 1-9 输出 01-09
// 10-31 正常输出
二、ES8 对 String 补白
1、padStart
str.padStart(targetLength [, padString])
功能:用一个字符串从首位填充当前字符串。
参数:
- targetLength(必须):当前字符串需要填充到的目标长度。如果这个数值小于当前字符串的长度,则返回当前字符串本身。
- padString(可选):填充字符串。
返回值:在原字符串开头填充指定的填充字符串直到目标长度所形成的新字符串。
示例:
'abc'.padStart(10); // " abc"
'abc'.padStart(10, "foo"); // "foofoofabc"
'abc'.padStart(6, "123465");// "123abc"
'abc'.padStart(8, "0"); // "00000abc"
'abc'.padStart(1); // "abc"
2、padEnd
str.padEnd(targetLength [, padString])
功能:用一个字符串从末尾填充当前字符串。
参数:
- targetLength(必须):当前字符串需要填充到的目标长度。如果这个数值小于当前字符串的长度,则返回当前字符串本身。
- padString(可选):填充字符串。
返回值:在原字符串末尾填充指定的填充字符串直到目标长度所形成的新字符串。
示例:
'abc'.padEnd(10); // "abc "
'abc'.padEnd(10, "foo"); // "abcfoofoof"
'abc'.padEnd(6, "123456"); // "abc123"
'abc'.padEnd(1); // "abc"