我从Firebase获取此字符串:
"[{type:'salad', qt:0, price:0.25},{type:'cheese', qt:0, price:0.45},{type:'bacon', qt:0, price:0.75},{type:'meat', qt:0, price:4.00},]"
这是一个字符串,如果将其评估为JavaScript,将导致对象数组。我需要使用JavaScript将其转换为适当的对象数组。预期结果是此数组:
[
{ type: 'salad', qt: 0, price: 0.25 },
{ type: 'cheese', qt: 0, price: 0.45 },
{ type: 'bacon', qt: 0, price: 0.75 },
{ type: 'meat', qt: 0, price: 4.00 }
]
我怎样才能做到这一点?
尽管修复保存的数据是最好的选择,但这将起作用,但是它非常“ hacky”。
只需将所有键替换为用双引号引起来的字符串,然后将单引号替换为双引号,然后使用 JSON.parse
str = "[{type:'salad', qt:0, price:0.25},{type:'cheese', qt:0, price:0.45},{type:'bacon', qt:0, price:0.75},{type:'meat', qt:0, price:4.00},]"
str = str.replace(/'/g, '"');
str = str.replace(/type/g, '"type"');
str = str.replace(/qt/g, '"qt"');
str = str.replace(/price/g, '"price"');
str = str.replace(",]","]")
arry = JSON.parse(str)
console.log(arry)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句