当前位置:首页 > JavaScript

js 实现replaceall

2026-03-14 16:58:03JavaScript

实现 JavaScript 的 replaceAll 方法

在 JavaScript 中,字符串的 replace 方法默认只会替换第一个匹配项。要实现替换所有匹配项的功能(类似 replaceAll),可以采用以下方法:

使用正则表达式全局替换

通过正则表达式配合 g 标志实现全局替换:

const str = "apple banana apple";
const newStr = str.replace(/apple/g, "orange");
console.log(newStr); // "orange banana orange"

使用 splitjoin 组合

通过分割字符串再重新组合的方式实现替换:

const str = "apple banana apple";
const newStr = str.split("apple").join("orange");
console.log(newStr); // "orange banana orange"

ES2021 的 replaceAll 方法

现代浏览器和 Node.js 已原生支持 replaceAll

const str = "apple banana apple";
const newStr = str.replaceAll("apple", "orange");
console.log(newStr); // "orange banana orange"

自定义 polyfill 函数

为兼容旧环境可自定义实现:

js 实现replaceall

if (!String.prototype.replaceAll) {
    String.prototype.replaceAll = function(search, replacement) {
        return this.split(search).join(replacement);
    };
}

注意事项

  • 正则表达式方法中特殊字符需要转义
  • 原生 replaceAll 在 Safari 14+ 和 Node.js 15+ 才完全支持
  • 性能上 split + join 通常优于正则表达式

标签: jsreplaceall
分享给朋友:

相关文章

js实现图

js实现图

JavaScript 实现图的常用方法 在 JavaScript 中,图(Graph)可以通过多种方式实现,常见的包括邻接表(Adjacency List)和邻接矩阵(Adjacency Matrix…

利用js实现

利用js实现

使用 JavaScript 实现 在 JavaScript 中,可以通过多种方式实现功能,具体取决于需求。以下是几种常见的方法: 方法一:使用原生 JavaScript // 示例代码…

js实现投球

js实现投球

实现投球动画的基本思路 使用JavaScript和CSS动画结合的方式模拟投球效果。核心是通过改变元素的位置、旋转和缩放属性,配合定时器或CSS过渡实现平滑动画。 创建基础HTML结构 <…

js实现文字滚动

js实现文字滚动

实现文字滚动的几种方法 使用CSS动画实现滚动 通过CSS的@keyframes和transform属性可以实现平滑的文字滚动效果。 <style> .scroll-text { w…

js进度条实现

js进度条实现

使用HTML和CSS创建基础结构 在HTML中创建一个容器元素用于显示进度条,通常使用<div>元素。CSS用于设置进度条的样式,包括宽度、高度、颜色和圆角等属性。 <div cl…

js计算器的实现

js计算器的实现

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