当前位置:首页 > JavaScript

用js实现trim函数

2026-03-01 09:56:46JavaScript

实现方法一:使用正则表达式

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

这个实现使用正则表达式匹配字符串开头和结尾的空格,并用空字符串替换它们。^\s+匹配开头的空格,\s+$匹配结尾的空格,g标志表示全局匹配。

用js实现trim函数

实现方法二:使用字符串方法

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

这种方法通过循环找到第一个和最后一个非空格字符的位置,然后使用substring方法提取子字符串。

用js实现trim函数

实现方法三:ES2019新增的trimStart和trimEnd

function trim(str) {
  return str.trimStart().trimEnd();
}

现代JavaScript环境支持trimStart()trimEnd()方法,可以分别去除开头和结尾的空格。这种方法最简单,但需要较新的JavaScript环境支持。

注意事项

  • 上述方法都会去除标准空格字符(U+0020)
  • 如果需要去除所有空白字符(包括制表符、换行符等),正则表达式可以修改为/^\s+|\s+$/g
  • 原始字符串不会被修改,所有方法都返回新字符串
  • 对于null或undefined输入,需要添加额外的检查逻辑

标签: 函数js
分享给朋友:

相关文章

vue实现js休眠

vue实现js休眠

Vue 中实现 JavaScript 休眠 在 Vue 中实现 JavaScript 休眠通常需要使用异步方式,以避免阻塞主线程。以下是几种常见方法: 使用 setTimeout 和 Pro…

js实现复制功能

js实现复制功能

使用 document.execCommand 方法 这种方法适用于较旧的浏览器,但在现代浏览器中可能被逐步淘汰。通过创建一个临时的 textarea 元素,将文本内容放入其中,然后执行复制命令。…

js分组实现

js分组实现

分组实现方法 在JavaScript中,可以通过多种方式实现数组或对象的分组操作。以下是几种常见的方法: 使用Array.prototype.reduce() 通过reduce方法可以轻松实现数组分…

js 实现链表

js 实现链表

链表的基本概念 链表是一种线性数据结构,由一系列节点组成,每个节点包含数据和指向下一个节点的指针。与数组不同,链表在内存中是非连续存储的,插入和删除操作效率较高。 链表的实现 在 JavaScrip…

js实现dh

js实现dh

JavaScript 实现 DH(Diffie-Hellman)密钥交换 Diffie-Hellman(DH)密钥交换是一种安全协议,允许双方在不安全的通信信道上建立一个共享密钥。以下是如何在 Jav…

js实现vue路由

js实现vue路由

Vue 路由的基本实现 在 Vue.js 中实现路由功能通常使用 Vue Router 库。Vue Router 是 Vue.js 官方的路由管理器,用于构建单页面应用(SPA)。 安装 Vue R…