【发布时间】:2021-12-09 11:44:03
【问题描述】:
我想在同一个字符串中进行多次替换。我有这个:
ignoredids = [{"ignoredid":"3329"},{"ignoredid":"25895"}];
userlist = `<div id="u343">something</div><div id="u3143">something</div><div id="u25895">something</div><div id="u5343">something</div><div id="u3329">something</div>`;
替换后应该是这样的:
<div id="u343">something</div><div id="u3143">something</div><div id="u25895">ignore this</div><div id="u5343">something</div><div id="u3329">ignore this</div>
所以我尝试了:
for (let { ignoredid } of ignoredids) {
mylist = userlist.replace(`<div id="u${ignoredid}">something</div>`,`<div id="u${ignoredid}">ignore this</div>`);
}
但它似乎没有做任何事情。怎么了?
【问题讨论】:
-
你能澄清一下你期望代码做什么吗?你在哪里使用
mylist?你能提供一个minimal reproducible example 来证明这个问题吗? -
你有一个错字
}]";我删除了最后一个"来修复。我认为这只是由于演示示例而不是真实代码;) -
mylist 只是一个字符串,它将在给定位置显示 html 代码。喜欢这个
mydiv.innerHTMLl = mylist; -
这里工作正常:jsfiddle.net/bf0m7p5r 所以我不明白...
-
@snksaint 在您的小提琴中找到错误 :)
isMyResult === whatOPWants:D 另外,该示例使用垃圾硬编码字符串...