`string.replace`不会更改变量

2022-02-21 00:00:00 string replace javascript
var variableABC = "A B C"; 
variableABC.replace("B", "D") // Wanted output: "A D C".

variableABC未更改:

console.log(variableABC); // "A B C"

我希望它是"A D C"


解决方案

根据Javascript标准,String.replace不应该修改字符串本身。它只返回修改后的字符串。有关详细信息,请参阅Mozilla Developer Network documentation。

您始终可以将字符串设置为修改后的值:

variableABC = variableABC.replace('B', 'D')

编辑:上面给出的代码仅用于替换第一个匹配项。

要替换所有匹配项,您可以执行以下操作:

 variableABC = variableABC.replace(/B/g, "D");  

替换所有匹配项并忽略大小写

 variableABC = variableABC.replace(/B/gi, "D");  

相关文章