js实现替换
字符串替换
在JavaScript中,字符串替换可以通过String.prototype.replace()方法实现。该方法接受两个参数:要替换的子字符串或正则表达式,以及替换的字符串或函数。
let str = "Hello World";
let newStr = str.replace("World", "JavaScript");
console.log(newStr); // 输出: Hello JavaScript
使用正则表达式进行全局替换:
let str = "apple, orange, apple";
let newStr = str.replace(/apple/g, "banana");
console.log(newStr); // 输出: banana, orange, banana
数组元素替换
数组中的元素可以通过索引直接替换:
let arr = [1, 2, 3, 4];
arr[1] = 5;
console.log(arr); // 输出: [1, 5, 3, 4]
使用Array.prototype.map()方法进行条件替换:

let arr = [1, 2, 3, 4];
let newArr = arr.map(item => item === 2 ? 5 : item);
console.log(newArr); // 输出: [1, 5, 3, 4]
对象属性替换
对象属性可以通过直接赋值进行替换:
let obj = {a: 1, b: 2};
obj.a = 3;
console.log(obj); // 输出: {a: 3, b: 2}
使用扩展运算符进行不可变替换:
let obj = {a: 1, b: 2};
let newObj = {...obj, a: 3};
console.log(newObj); // 输出: {a: 3, b: 2}
DOM元素内容替换
替换HTML元素的内容可以使用innerHTML或textContent属性:

document.getElementById("myElement").innerHTML = "新内容";
替换整个DOM节点:
let oldNode = document.getElementById("oldNode");
let newNode = document.createElement("div");
newNode.textContent = "新节点";
oldNode.parentNode.replaceChild(newNode, oldNode);
正则表达式高级替换
使用函数作为替换参数可以实现更复杂的逻辑:
let str = "3 apples and 5 oranges";
let newStr = str.replace(/\d+/g, match => match * 2);
console.log(newStr); // 输出: "6 apples and 10 oranges"
模板字符串替换
ES6模板字符串可以方便地进行变量替换:
let name = "Alice";
let greeting = `Hello, ${name}!`;
console.log(greeting); // 输出: Hello, Alice!






