在 ES12 中,JavaScript 新增了 String.prototype.trimStart()
和 String.prototype.trimEnd()
两个方法,用于去除字符串的空白字符,这在前端开发中十分常用。本文将详细介绍这两个方法的使用和作用,以及使用时需要注意的细节。
1. String.prototype.trimStart() 方法
String.prototype.trimStart()
方法用于去除字符串开头的空白字符,类似于 String.prototype.trim()
方法去除字符串两端的空白字符,但不同之处在于它只作用于字符串的开头。
1.1 方法语法
String.prototype.trimStart()
方法的语法如下:
str.trimStart()
1.2 方法参数
String.prototype.trimStart()
方法不接受任何参数。
1.3 方法返回值
String.prototype.trimStart()
方法返回一个新字符串,该字符串是原字符串去除开头空白字符后得到的字符串。
1.4 方法示例
以下是一个使用 String.prototype.trimStart()
方法的示例:
const str = " Hello, world! "; console.log(str.trimStart()); // "Hello, world! "
在上述示例中,原始字符串 str
的开头有多个空格字符,通过调用 str.trimStart()
方法,返回的新字符串中已去除了开头的空格字符,结果为 "Hello, world! "
。
2. String.prototype.trimEnd() 方法
String.prototype.trimEnd()
方法用于去除字符串末尾的空白字符,类似于 String.prototype.trim()
方法去除字符串两端的空白字符,但不同之处在于它只作用于字符串的末尾。
2.1 方法语法
String.prototype.trimEnd()
方法的语法如下:
str.trimEnd()
2.2 方法参数
String.prototype.trimEnd()
方法不接受任何参数。
2.3 方法返回值
String.prototype.trimEnd()
方法返回一个新字符串,该字符串是原字符串去除末尾空白字符后得到的字符串。
2.4 方法示例
以下是一个使用 String.prototype.trimEnd()
方法的示例:
const str = " Hello, world! "; console.log(str.trimEnd()); // " Hello, world!"
在上述示例中,原始字符串 str
的末尾有多个空格字符,通过调用 str.trimEnd()
方法,返回的新字符串中已去除了末尾的空格字符,结果为 " Hello, world!"
。
3. 注意事项
在使用 String.prototype.trimStart()
和 String.prototype.trimEnd()
方法时,需要注意以下几点:
3.1 兼容性
String.prototype.trimStart()
和 String.prototype.trimEnd()
方法是 ES12 新增的方法,在遗留代码中不一定得到支持,因此要注意兼容性问题。
3.2 与旧有方法的区别
String.prototype.trimStart()
和 String.prototype.trimEnd()
方法与 String.prototype.trim()
方法的区别在于,它们只去除字符串的开头或末尾的空白字符,而不涉及字符串两端的空白字符。因此,使用时需要注意方法的作用范围。
3.3 空白字符的定义
String.prototype.trimStart()
和 String.prototype.trimEnd()
方法所去除的空白字符包括空格符、制表符、换行符、回车符等等。(参见 Unicode 规范:https://www.unicode.org/glossary/#white_space_character)
4. 总结
String.prototype.trimStart()
和 String.prototype.trimEnd()
方法是 ES12 新增的方法,用于去除字符串的开头和末尾的空白字符。在使用时需要注意兼容性、方法作用范围以及空白字符的定义等方面。这两个方法的使用可以帮助前端开发者更加便捷地操作字符串,提高开发效率。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6454635e968c7c53b084de74