ES10 中字符串扩展 (String.prototype.trimStart() 和 String.prototype.trimEnd() ) 的运用

在 ES10 中,JavaScript 字符串对象新增了两个方法:String.prototype.trimStart()String.prototype.trimEnd(),用于去除字符串的前后空格。这两个方法和 String.prototype.trim() 功能类似,但是只针对字符串的前后空格进行处理。

trimStart()

String.prototype.trimStart() 方法会从字符串的开头(左边)去除空格,返回一个新字符串。它的语法如下:

str.trimStart()

示例代码:

const str = "  JavaScript String  ";
console.log(str.trimStart()); // "JavaScript String  "

可以看到,去除了字符串开头的空格。

trimEnd()

String.prototype.trimEnd() 方法会从字符串的结尾(右边)去除空格,返回一个新字符串。它的语法如下:

str.trimEnd()

示例代码:

const str = "  JavaScript String  ";
console.log(str.trimEnd()); // "  JavaScript String"

可以看到,去除了字符串结尾的空格。

案例应用

纯前端场景

在前端场景中,通常需要从用户输入的数据中去除前后空格,以达到最佳的用户体验。通过上述方法可以轻松实现。

例如,我们可以在用户登录时,通过 trimStart()trimEnd() 方法去除用户输入的用户名和密码中的前后空格:

const username = document.getElementById('username').value.trimStart().trimEnd();
const password = document.getElementById('password').value.trimStart().trimEnd();

服务端场景

在服务端场景中,前后空格的处理也是一个必不可少的操作。例如,读取文件时的文件路径,往往包含前后空格,需要通过 trimStart()trimEnd() 方法去除:

const fs = require('fs');
const path = ' /usr/log/access.log ';
const data = fs.readFileSync(path.trimStart().trimEnd());

总结

String.prototype.trimStart()String.prototype.trimEnd() 这两个方法是 JavaScript 字符串对象新增的方法,用于去除字符串的前后空格。在开发中,经常需要去除用户输入数据或读取文件时的前后空格,这时利用这两个方法可以达到方便、快捷的效果。

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


纠错反馈