当前位置:首页 > JavaScript

js 实现replaceall

2026-04-06 10:46:40JavaScript

JavaScript 实现 replaceAll 方法

JavaScript 字符串原生 replace 方法默认只替换第一个匹配项。要实现替换所有匹配项,可通过以下方式:

使用正则表达式全局匹配

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

使用 split 和 join 组合

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

ES2021 新增的 replaceAll

现代浏览器支持原生 replaceAll 方法:

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

兼容性处理方案

如需兼容旧环境,可添加 polyfill:

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

特殊字符处理

当替换内容包含正则特殊字符时,需先转义:

js 实现replaceall

function escapeRegExp(string) {
  return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
}

const str = "1+1=2";
const result = str.replace(new RegExp(escapeRegExp("1+1"), 'g'), "2+2");
console.log(result); // "2+2=2"

标签: jsreplaceall
分享给朋友:

相关文章

js实现文件下载

js实现文件下载

使用 a 标签下载文件 通过动态创建 a 标签并设置 download 属性实现文件下载。适用于已知文件 URL 或 Blob 数据的情况。 function downloadFile(url, f…

js实现选题

js实现选题

实现选题功能的JavaScript方法 基础实现方案 使用数组存储选项,通过随机索引选取: const options = ['选项A', '选项B', '选项C', '选项D']; const r…

js 实现滚动

js 实现滚动

实现滚动的方法 使用 window.scrollTo() window.scrollTo() 方法可以滚动到文档中的特定位置。可以指定 x 和 y 坐标,或者使用平滑滚动的选项。 // 滚动到指定位…

js实现菜单

js实现菜单

实现基本HTML结构 使用HTML创建菜单的基本框架,通常包含<ul>和<li>元素。示例结构如下: <ul id="menu"> <li><…

js实现定位

js实现定位

使用Geolocation API获取当前位置 在JavaScript中,可以通过浏览器内置的Geolocation API获取用户的地理位置信息。该API需要用户授权才能访问位置数据。 if (n…

js 实现页面刷新

js 实现页面刷新

使用 location.reload() location.reload() 是原生 JavaScript 提供的页面刷新方法。调用该方法会重新加载当前页面,相当于点击浏览器的刷新按钮。 // 基本…