当前位置:首页 > JavaScript

js实现trim

2026-04-06 08:41:10JavaScript

实现 JavaScript 的 trim 方法

JavaScript 的 trim 方法用于移除字符串两端的空白字符(包括空格、制表符、换行符等)。以下是几种实现方式:

使用正则表达式

最简洁的方式是使用正则表达式替换字符串两端的空白字符:

function trim(str) {
  return str.replace(/^\s+|\s+$/g, '');
}

^\s+ 匹配字符串开头的空白字符,\s+$ 匹配字符串末尾的空白字符,g 表示全局匹配。

原生方法(ES5+)

现代浏览器和 Node.js 环境已原生支持 String.prototype.trim

const str = '  hello  ';
console.log(str.trim()); // 输出 'hello'

手动实现(非正则)

如果不使用正则表达式,可以通过遍历字符串实现:

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);
}

扩展实现(trimStart/trimEnd)

如果需要单独处理开头或结尾的空白:

js实现trim

function trimStart(str) {
  return str.replace(/^\s+/g, '');
}

function trimEnd(str) {
  return str.replace(/\s+$/g, '');
}

性能考虑

原生 trim() 方法通常性能最优。正则表达式实现适用于需要兼容旧环境的情况,手动遍历适用于对正则限制严格的场景。

标签: jstrim
分享给朋友:

相关文章

js实现分页

js实现分页

实现分页的基本思路 分页功能通常需要处理数据分割、页码生成和用户交互。核心逻辑包括计算总页数、根据当前页截取数据、渲染页码按钮等。 前端分页实现(静态数据) 假设已有全部数据,仅需前端分页展示:…

js轮播图实现原理

js轮播图实现原理

轮播图的基本原理 轮播图通过动态切换显示的内容(图片、文本等)实现视觉上的滑动效果。核心原理是利用CSS和JavaScript控制元素的显示与隐藏,或通过变换位置实现滑动动画。 实现方法一:…

js实现防洪

js实现防洪

防抖(Debounce)实现 防抖的核心思想是在事件触发后延迟执行回调函数,若在延迟时间内再次触发事件,则重新计时。适用于输入框搜索、窗口调整等场景。 function debounce(func,…

js手势实现

js手势实现

手势识别实现方法 在JavaScript中实现手势识别通常涉及监听触摸事件(touchstart、touchmove、touchend)或鼠标事件(mousedown、mousemove、mouseu…

js实现 功能

js实现 功能

在 JavaScript 中实现功能通常涉及多个关键步骤,具体取决于功能需求。以下是常见功能的实现方法和示例: 基本功能实现 使用函数封装逻辑是最直接的方式。例如,实现一个计算两数之和的函数: f…

js计算器的实现

js计算器的实现

实现基础结构 HTML部分需要创建计算器的基本框架,包含显示区域和按钮。使用<div>容器包裹整个计算器,内部设置一个显示屏和多个按钮。 <div class="calculato…