ES9 中新增的字符串原型方法 padStart 和 padEnd 的使用实践

阅读时长 4 分钟读完

ES9 中新增的字符串原型方法 padStart 和 padEnd 的使用实践

在 ES9 中,为了让字符串拼接更加方便,新增了两种字符串原型方法:padStart 和 padEnd。

padStart 和 padEnd 的主要作用是在字符串的头部和尾部填充指定的字符,使得字符串达到指定长度。其中,padStart 用于在字符串头部填充,padEnd 则是在字符串尾部填充。

下面我们来看一些使用示例和技巧。

填充字符串以达到指定长度

假设我们需要让一个字符串达到指定长度,但是如果字符串长度不够,我们需要在字符串头部或尾部填充指定字符,以达到指定长度。

例如,我们需要让字符串 "hello" 的长度达到 10,用 * 号填充,则可以使用 padStart 方法:

这里的第一个参数是字符串的目标长度,第二个参数是用于填充的字符。也可以只提供填充字符,这样就可以使用默认长度来填充字符串:

同样的效果也可以用 padEnd 方法实现:

填充字符串时注意长度

当我们填充字符串时,需要注意目标长度的设置,否则可能会导致填充不足或填充过多。

例如,下面的代码想要用 # 号填充字符串达到 6 个字符的长度:

但是,由于填充字符 # 的长度为 1,填充 4 个 # 号只能达到 4 个字符的长度,不足目标长度,因此需要在填充字符后面再添加 2 个 # 号:

同样的效果可以用 padStart 实现。

填充数字

padStart 和 padEnd 不仅可以用于填充字符串,还可以用于填充数字。例如,我们需要输出一段数字序列:

可以用 padStart 方法来实现:

这里的目标长度是 3,填充字符是 0。

填充二进制表示

当我们需要输出一段二进制数列时,padStart 方法也可以派上用场。

例如,我们需要输出 0 到 10 的二进制表示:

这里的 toString(2) 将数字转为了二进制字符串,目标长度是 4,填充字符是 0。

按长度截取字符串

padStart 和 padEnd 还可以配合 slice 方法一起使用,来实现按照长度截取字符串的操作。例如,下面的代码将一个字符串分成两段,第一段长度为 3,第二段长度为 7:

这里的 padEnd 和 padStart 分别用于将原字符串头部和尾部填充指定字符,然后再使用 slice 方法按照长度截取所需的部分。

总结

ES9 中新增的字符串原型方法 padStart 和 padEnd 可以极大地简化字符串拼接的操作,不仅可以用于填充字符串长度,还可以用于填充数字和二进制表示。但是在使用过程中需要注意目标长度的设置,否则可能会填充不足或填充过多。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/65ab3c68add4f0e0ff4dc325

纠错
反馈

纠错反馈