ES9 中的字符串填充方法 padStart()/padEnd()

阅读时长 4 分钟读完

在 ES9 中,新增了两个字符串方法 padStart()padEnd(),可以用来在字符串的开头或结尾填充一些字符。这两个方法为我们解决了一些常见的字符串格式化问题,如表格对齐、时间格式化等。

padStart()

padStart() 方法将给定字符串填充到指定长度开头,使用另一个字符串填充。如果当前字符串长度大于或等于指定的长度,则返回原字符串。

其语法为:

其中参数 targetLength 为目标字符串长度,padString 为填充所使用的字符串。如果未指定 padString,则使用空格来填充。

下面是一个简单的示例,将字符串填充到一个指定长度:

上面的代码中,我们在字符串 '123' 的开头填充了两个字符 '0',使其长度变为了 5。

padEnd()

padEnd() 方法将给定字符串填充到指定长度结尾,使用另一个字符串填充。同样,如果当前字符串长度大于或等于指定的长度,则返回原字符串。

其语法为:

padStart() 方法相同,参数 targetLength 为目标字符串长度,padString 为填充所使用的字符串。如果未指定 padString,则使用空格来填充。

下面是一个使用 padEnd() 方法的示例,将字符串填充到一个指定长度并在结尾添加标点符号:

在以上示例中,我们使用 padEnd() 方法在字符串 'abc' 的结尾填充了三个 '.' 字符,使其长度变为了 6。需要注意的是,如果我们填充的字符串不足以完成填充,padStart()padEnd() 方法会将填充字符串复制到指定长度。

使用示例

下面我们来实际运用 padStart()padEnd() 方法,在实际项目中解决字符串填充问题。

数字格式化

比如我们需要格式化时间,将小时、分钟和秒分别填充到两位,并用冒号连接。我们可以这样写:

表格对齐

我们可以利用 padStart()padEnd() 方法来解决表格单元格的对齐问题。比如我们有一个表格,需要将 Name 单元格左对齐, Age 单元格右对齐。我们可以这样写:

-- -------------------- ---- -------
----- ----- - -
  -------- ------ --------
  --------- ----- ---- -------
  ------- ----- ---- ----------
  ----------- ----- ----------
-

----- --------- - ---------------- -- --
  ------------------------- -- ----------------
  
----- ----------- - ----- ------ -- -----------------
----- ------------ - ----- ------ -- -------------------

--- ------ --- -- ------ -
  ----- ---- - -------------- -- --
    - --- - - ----------------- ------------- - ------------------ --------------
    -------  --
    -----------------
-

输出结果如下:

总结

ES9 中的 padStart()padEnd() 方法在字符串填充的场景中提供了便利性和可读性。

这两个方法让字符串格式化变得更加方便,可以在时间格式化、日志输出、表格对齐、文件名填充等场景中广泛应用。同时,这些场景也涉及了日常前端开发中常见的问题。因此,学会使用这两个方法可以让我们的开发工作更加高效和便捷。

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

纠错
反馈