首页 > 编程语言 >在JavaScript中,如何替换所有出现的字符串?

在JavaScript中,如何替换所有出现的字符串?

时间:2023-10-10 20:45:47浏览次数:49  
标签:abc 浏览器 xyz JavaScript test replaceAll 字符串 替换

内容来自 DOC https://q.houxu6.top/?s=在JavaScript中,如何替换所有出现的字符串?

给定一个字符串:

s = "Test abc test test abc test test test abc test test abc";

这似乎只删除了上面字符串中的第一个abc

s = s.replace('abc', '');

如何替换所有的的出现?


在大多数流行浏览器的最新版本中,您可以使用 replaceAll,如下所示:

let result = "1 abc 2 abc 3".replaceAll("abc", "xyz");
// `result` 是 "1 xyz 2 xyz 3"

但首先检查 Can I use 或其他兼容性表,以确保您的目标浏览器已经添加了对它的支持。


对于 Node.js 和与旧版/非当前浏览器的兼容性:

注意:不要在性能关键代码中使用以下解决方案。

作为针对简单字面字符串的正则表达式的替代方案,您可以使用

str = "Test abc test test abc test...".split("abc").join("");

一般模式是

str.split(search).join(replacement)

这在某些情况下比使用 replaceAll 和正则表达式更快,但在现代浏览器中似乎已经不再是这样了。

基准测试:https://jsben.ch/TZYzj

结论:

如果您有性能关键用例(例如处理数百个字符串),请使用正则表达式方法。但对于大多数典型用例,这值得不必担心特殊字符。

标签:abc,浏览器,xyz,JavaScript,test,replaceAll,字符串,替换
From: https://www.cnblogs.com/xiaomandujia/p/17755673.html

相关文章

  • python查找替换危险字符脚本
    为了沃滴好大儿的大创写了这么个脚本代码如下:1importio2importbase6434defreplace_dangerous_sequences(image_path):5try:6#读取图像文件的内容7withopen(image_path,'rb')asimage_file:8image_data=image_......
  • 详解如何通过JavaScript实现函数重载
    有的同学在开发中可能遇到过一个困扰,但是很少有人去解决这个问题,我这用一个例子展现出来constsearcher={};searcher.findAll=()=>{console.log("查询所有用户");};searcher.findByName=(name)=>{console.log("按照用户名称查询");};searcher.findByFirstN......
  • 前端面试八股文 JavaScript
    前端面试八股文JavaScript谈谈对原型链的理解在JavaScript中,每个对象都有一个原型对象proto,指向其构造函数的原型对象prototype。当我们创建一个新的实例对象时,这个对象会从其构造函数的原型对象prototype中继承属性和方法。如果实例对象自身没有某个属性或方法,但是其构造函数......
  • 力扣-2744-最大字符串配对数目
    给你一个下标从0开始的数组words,数组中包含互不相同的字符串。如果字符串words[i]与字符串words[j]满足以下条件,我们称它们可以匹配:字符串words[i]等于words[j]的反转字符串。0<=i<j<words.length请你返回数组words中的最大匹配数目。注意,每个字符串最......
  • C# BYTE[] 与16进制字符串互相转换
     byte[]转16进制字符串方法一、byte[]resultArray=newbyte[]{1,2,3,4,5,6,7,8,9};BitConverter.ToString(resultArray).Replace("-","") 方法二、  ///<summary>///字节数组转16进制字符串///</summary>///<paramname="bytes"><......
  • JavaScript 浮点数运算的精度问题
    来源:https://zhuanlan.zhihu.com/p/191395766问题描述在JavaScript中整数和浮点数都属于 Number 数据类型,所有数字都是以64位浮点数形式储存,即便整数也是如此。所以我们在打印 1.00 这样的浮点数的结果是 1 而非 1.00 。在一些特殊的数值表示中,例如金额,这样看上去......
  • 【C++ Primer】字符串和数组
    一、命名空间的using声明1、using声明:usingnamespace::name,例如:usingstd::cin。一旦声明了上述语句,就可以直接访问命名空间的变量。每个变量都需要using声明,位于头文件中的代码不应该使用using声明。2、using编译:usingnamespacestd;直接使用整个命名空间。使用using声明比使用us......
  • .Net Core 统一全局处理字符串为Null问题
    services.AddControllersWithViews().AddNewtonsoftJson(options=>{//设置序列化时间格式options.SerializerSettings.DateFormatString="yyyy-MM-ddHH:mm:ss";options.Serializ......
  • .Net Core 中GUID字符串的几种格式化
    NET下的Guid格式化有如下五种:1.Guid.NewGuid().ToString("N")获取32位不包含“-”号的GUID字符串例如:1c64d58a9e834bfe8d053555d81453d02.Guid.NewGuid().ToString("D")获取32位包含“-”号的GUID字符串,默认格式例如:ae8672ac-a987-43f3-a7c2-ac7b3249ac7b3.Guid.NewGuid().......
  • JavaScript
    1可以在任何位置,一般在body后<script>window.alert("JS");//浏览器弹出警告框document.write("HelloJS");//写入html页面中console.log("hellojs")//控制台输出vara=20;//声明全局变量var......