在 ES2020 中,新增了两个 String 的原型方法:trimStart
和 trimEnd
,这两个方法可以用来删除字符串开头和结尾的空白字符。这些方法在字符串的处理和格式化中非常有用,本文将详细介绍这两个方法的使用,提供示例代码并提供相关的指导意义。
使用 String.prototype.trimStart 和 trimEnd 方法
trimStart
方法用于删除字符串开头的空白字符,包括空格、制表符、换行符等。而 trimEnd
方法用于删除字符串结尾的空白字符,同样包括空格、制表符、换行符等。这两个方法都不会影响原字符串本身,而是返回一个新的字符串。
const str = " hello world! "; console.log(str.trimStart()); // "hello world! " console.log(str.trimEnd()); // " hello world!" console.log(str.trim()); // "hello world!"
在以上示例中,trimStart
方法删除了字符串开头的两个空格,而 trimEnd
方法删除了字符串结尾的两个空格。而 trim
方法则是删除字符串的开头和结尾空白字符。
深入理解这些方法
trimStart
和 trimEnd
方法都是以字符串的形式返回一个新字符串,并不会修改原始字符串。需要注意的是,这两个方法只能删除空白字符,不能删除其他类型的非空白字符。
const name = " John Doe "; console.log(name.trimStart()); // "John Doe " console.log(name.trimEnd()); // " John Doe"
以上示例将仅仅删除字符串开头或结尾的空白字符,其他字符不受影响。为了验证这一点,我们可以在字符串中添加一个破折号 -
,并尝试使用上述方法将其删除。
const name = " John- Doe "; console.log(name.trimStart()); // "John- Doe " console.log(name.trimEnd()); // " John- Doe"
以上示例中,trimStart
方法对字符串开头的空白字符进行了删减,但是破折号 -
并没有被删除。同样地,trimEnd
方法也没有删除字符串结尾的破折号 -
。
建议和指导意义
trimStart
和 trimEnd
方法提供了一种方便快捷的方法来删除字符串开头和结尾的空白字符。这是在前端开发中经常需要处理的任务之一,例如在验证表单输入值时,通常需要消除用户在输入过程中引入的额外空白字符。
但是需要注意的是,这些方法不能删除其他类型的字符。因此,如果需要删除特定的字符,例如破折号 -
等,需要使用其他方法。
除此之外,还需要注意的是,这些方法只在浏览器支持 ES2020 标准的情况下才可用。如果需要在低版本浏览器中使用这些方法,需要使用 polyfill。
结论
在本文中,我们探讨了ES2020中新增的两个String原型方法:trimStart
和 trimEnd
。这两个方法可以看做是 trim
方法的补充,可以更方便地处理字符串开头和结尾的空白字符。这些方法在前端开发中非常有用,需要特别注意这些方法仅限于删除空白字符。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/66fbb6dc447136260160ffd4