在工作中,遇到了需要將不滿八位的一個字符串進行后補0的操作,所以就在網上學習了關于js原生補充字符串的方法,然后用這篇博客記錄下來。
目錄
前置補充字符串?String.prototype.padStart()
后置補充字符串String.prototype.padEnd()
前置補充字符串?String.prototype.padStart()
使用語法
str.padStart(targetLength)
str.padStart(targetLength, padString)
?targetLength:
當前?str
?填充后的長度。如果該值小于或等于?str.length
,則會直接返回當前?str
。
padString:
用于填充當前?str
?的字符串。如果?padString
?太長,無法適應?targetLength
,則會從末尾被截斷。默認值為 Unicode“空格”字符。
下面是一段代碼示例:
var str='.123'
// str前補一個0
var str1=str.padStart(5,'0')
// str1的長度補充到10 (默認補空格)
var str2=str1.padStart(10)
// str前補0同時字符串長度不超過3
var str3=str.padStart(3,'0')
// str前補123同時字符串長度不超過6
var str4=str.padStart(6,'123')
console.log(str)
console.log(str1)
console.log(str2)
console.log(str3)
console.log(str4)
運行結果:
?分析代碼,我們還可以知道,該方法不會改變字符串原本的值(str的值一直都是'.123'),必須定義一個新的值來接收。
后置補充字符串String.prototype.padEnd()
使用語法和padStart類似:
padEnd(targetLength)
padEnd(targetLength, padString)
代碼示例:
var str='.123'
// str前補一個0
var str1=str.padEnd(5,'0')
// str1的長度補充到10 (默認補空格)
var str2=str1.padEnd(10)
// str前補0同時字符串長度不超過3
var str3=str.padEnd(3,'0')
// str前補123同時字符串長度不超過6
var str4=str.padEnd(6,'123')
console.log(str)
console.log(str1)
console.log(str2)
console.log(str3)
console.log(str4)
在之前的代碼基礎上,只會將padStart方法變更為padEnd方法
運行結果: