我有一个动态的数组项目,如 [“{text:”US“}”,“{text:”Mexico“}”,“{text:”Brazil“}”] 。我需要将此字符“{>替换为此字符 {和此字符}”此字符} 。最后更换后我需要输出 [{text:“US”},{text:“Mexico”},{text:“Brazil”}] 。如果单个对象意味着我可以替换。但是对于数组列表没有得到。我试过如下,这一个不工作怎么能实现这一个?非常感谢。谢谢。
dynamicSubRegions =["{text: "US"}", "{text: "Mexico"}", "{text: "Brazil"}"];
var dynamicSubRegionsFinal = dynamicSubRegions[dynamicSubRegions.indexOf('"{')] = '{';
答案 0 :(得分:0)
我假设您尝试将string
值转换为json
对象。
json密钥的格式存在问题,必须将其包装在""
中,以使其成为JSON.parse(...)方法的有效输入,该方法可以将字符串转换为有效的json对象
var array = ["{text: \"US\"}", "{text: \"Mexico\"}", "{text: \"Brazil\"}"];
array.forEach(function(value, key){
array[key] = JSON.parse(value.replace('{text:', '{"text":'));
})
演示:Fiddle
答案 1 :(得分:-1)
你的数组语法错误,双引号不在变量
中dynamicSubRegions =["{text: \"US\"}", "{text: \"Mexico\"}", "{text: \"Brazil\"}"];
alert(dynamicSubRegions[0]);