点击上方蓝字关注我哦
es8中新扩展了两个字符串相关的方法分别是:
String.prototype.padStart()
String.prototype.End()
一、String.prototype.padStart()
01. 简介
用另一个字符串填充当前字符串(如果需要,可以多次填充),直到结果字符串达到给定的长度为止。从当前字符串的开头开始应用填充。
02. 语法
str.padStart(targetLength [, padString])
targetLength:填充后字符串的长度。
padString 可选的,填充的字符串。
03. 例子
在abc字符串前面填充'c',新字符串长度为5,即在abc前填充2个'c''abc'.padStart(5, "c"); // "ccabc"
如果该值小于str.length, str则按原样返回
'abc'.padStart(1); // "abc"'abc'.padStart(2); // "abc
04. 开发中的运用
例子1:获取年月日
通常我们获取年月日的时候,比如:let date = new Date();let year = date .getFullYear(); let month = date.getMonth() + 1; let day = date .getDate(); console.log(year + '-' + month + '-' + day)// 2021-1-20
但是我们希望当月份和日期小于10的时候前面补充0,即希望显示的是2021-01-20,此时可以用padStart方法:
let date = new Date();let year = date .getFullYear(); let month = (String(date.getMonth() + 1)).padStart(2,'0'); let day = (String(date .getDate())).padStart(2,'0'); console.log(year + '-' + month + '-' + day)// 2021-01-20
例2:手机号码只显示末尾4位,其他用*号填充
const tel = '13146467238'const newTel = tel.slice(-4).padStart(tel.length,'*')console.log(newTel) // *******7238
二、String.prototype.padEnd()
01. 简介
用给定的字符串(如果需要,重复)填充当前字符串,以便结果字符串达到给定的长度。从当前字符串的末尾开始应用填充。
02. 语法
str.padEnd(targetLength [, padString])
targetLength:填充后字符串的长度。
padString 可选的,填充的字符串。
03. 例子
在abc字符串前面填充'c',新字符串长度为5,即在abc后填充2个'c''abc'.padEnd(5, "c"); // "abccc"
如果该值小于str.length, str则按原样返回
'abc'.padEnd(1); // "abc"'abc'.padEnd(2); // "abc
04. 开发中的运用
通常在将10位的时间戳转成13位的时候,可以在末尾补0timestamp.padEnd(13,'0')
References
https://developer.mozilla.org/zh-CN/search?q=padStarhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/padEnd
Readings
书名:亲密关系作者:[加]克里斯多福·孟
END
往期文章链接地址:https://github.com/fqs1024/blog/blob/master/README.md
点个赞哦~