js实现trim
实现 JavaScript 的 trim 方法
在 JavaScript 中,trim 方法用于去除字符串两端的空白字符(包括空格、制表符、换行符等)。以下是几种实现方式:
使用原生 String.prototype.trim
现代浏览器和 Node.js 环境已原生支持 trim 方法:
const str = " Hello, World! ";
const trimmedStr = str.trim();
console.log(trimmedStr); // 输出: "Hello, World!"
手动实现 trim 方法
如果需要手动实现,可以通过正则表达式或遍历字符串实现:
方法 1:正则表达式
function trim(str) {
return str.replace(/^\s+|\s+$/g, '');
}
const str = " Hello, World! ";
console.log(trim(str)); // 输出: "Hello, World!"
^\s+匹配字符串开头的空白字符。\s+$匹配字符串结尾的空白字符。g标志表示全局匹配。
方法 2:遍历字符串
function trim(str) {
let start = 0;
let end = str.length - 1;
while (start <= end && str[start] === ' ') start++;
while (end >= start && str[end] === ' ') end--;
return str.substring(start, end + 1);
}
const str = " Hello, World! ";
console.log(trim(str)); // 输出: "Hello, World!"
- 从字符串开头和结尾分别遍历,找到非空白字符的起始和结束位置。
- 使用
substring截取有效部分。
扩展:实现 trimStart 和 trimEnd
如果需要单独去除开头或结尾的空白字符:
trimStart 实现
function trimStart(str) {
return str.replace(/^\s+/g, '');
}
trimEnd 实现

function trimEnd(str) {
return str.replace(/\s+$/g, '');
}
注意事项
- 原生
trim方法性能最佳,优先使用。 - 手动实现时,正则表达式方式简洁,但遍历方式可能更适合对性能敏感的场景。
- 空白字符包括空格 (
`)、制表符 (\t)、换行符 (\n)、回车符 (\r`) 等。






