用法(官方):
padStart() 方法用另一個字符串填充當前字符串(重復,如果需要的話),以便產生的字符串達到給定的長度。填充從當前字符串的開始(左側)應用的。padEnd() 填充從當前字符串的末尾(右側)應用的。
理解:ES2017引入了字符創補全長度的功能。如果某個字符串不夠指定長度,會在頭部或者尾部補全。padStart() 用於頭部補全,padEnd() 用於尾部補全。
語法:
str.padStart(targetLength [, padString])
str.padEnd(targetLength [, padString])
參數:
targetLength
當前字符串需要補全的目標長度。如果這個數值小於當前字符串的長度,則返回當前字符串本身。
padString | 可選
補全字符串。如果字符串太長,使補全的字符串長度超過了目標長度,則只保留最左側的部分,其他部分會被截斷。此參數的缺省值為“” (U+0020)。
返回值:
padStart()方法在原字符串開頭補全指定的補全字符串,直到目標長度所形成的新字符串。
padEnd()方法在原字符串末尾補全指定的補全字符串,直到目標長度所形成的新字符串。
適用場景:
1. 常見用途是為數值補全指定位數
2. 另一個用途是提示字符串格式
示例:
‘wen’.padStart(8, '12') // '12121Wen' 指定8位字符長度,不夠用來12補全 'wen'.padStart(5, '12') // '12Wen' 'wen'.padEnd(8, '12') // 'wen12121' 'wen'.padEnd(5, '12') // 'wen12' 'wen'.padStart(10, '1234567890') // '1234567wen' 多余的字符串會被截掉 // 如果省略第二個參數,用空格補全長度 ‘wen’.padStart(5) // ' wen' // 如果原字符串的長度,等於或大於指定的最小長度,則返回原字符串。 'wen'.padStart(2, 'ab') // 'wen' 'wen'.padEnd(2, 'ab') // 'wen'
第二個參數的其他寫法:
// null將作為一個字符串來使用 'wen'.padStart(8, null) // 'nullnwen' // []將會原樣輸出 'wen'.padStart(8, []) // 'wen' 'wen'.padStart(18, {}) // '[object object]wen' 'wen'.padStart(8, false) // 'falsewen'