我有一个关联数组中包含多个字符串:
var arr = {
'============================================': '---------',
'++++++++++++++++++++++++++++++++++++++++++++': '---------',
'--------------------------------------------': '---------'
};
我希望将每个键出现的位置替换为相应的值,以下是我的解决方案:
for (var i in arr)
{
strX = str.replace(i, arr[i]);
console.log('arr[\''+i+'\'] is ' + arr[i] + ': ' + strX);
}
这个正则表达式可以匹配第一个出现的内容,但如果我将正则表达式改为/i/g
,那么代码就不能工作了。
for (var i in arr)
{
strX = str.replace(/i/g, arr[i]);
console.log('arr[\''+i+'\'] is ' + arr[i] + ': ' + strX);
}
你们知道如何解决这个问题吗?这个问题与IT技术有关。请注意,不要删除HTML标签。
for ... in
。一旦有人操作了数组原型,你就会陷入困境。 - cdhowievar arr = {...}
。 - user113716arr
这个名字让我感到困惑。:) 但是,如果有人触及 object 原型,那么 OP 仍然会遇到问题。 - cdhowie