You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何一次性批量替换字符串?优化class选择器下的JS重复代码

精简批量字符串替换代码方案

你当前的代码重复遍历DOM元素多次,完全可以通过一次遍历+批量替换规则来精简,只需要把所有替换规则整理成数组,对每个元素的内容依次执行所有替换即可,避免冗余的DOM查询和循环:

// 获取所有目标元素
const elements = document.querySelectorAll('.information');

// 定义所有替换规则:[原字符串, 替换后字符串]
const replaceRules = [
  [" pages", " pp."],
  [" page", " p."],
  ["colour & ", "colour & "],
  [" ill", " ill"],
  [" × ", " × "],
  [" cm", " cm"],
  [" / ", " / "]
];

// 遍历每个元素,依次应用所有替换规则
elements.forEach(element => {
  let html = element.innerHTML;
  replaceRules.forEach(([from, to]) => {
    html = html.replace(from, to);
  });
  element.innerHTML = html;
});

优化说明:

  • 用document.querySelectorAll替代getElementsByClassName,返回静态NodeList,避免动态集合可能带来的遍历问题
  • 把所有替换规则集中在数组里,后续新增/修改规则只需调整数组,维护更方便
  • 仅遍历一次DOM元素,对每个元素的内容一次性完成所有替换,减少DOM操作次数,提升性能
  • 使用ES6箭头函数和数组解构,代码更简洁易读

内容的提问来源于stack exchange,提问作者R-G

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 00:33:35