为了账号安全,请及时绑定邮箱和手机立即绑定

在Javascript中将json字符串转换为对象

在Javascript中将json字符串转换为对象

Smart猫小萌 2021-06-29 13:59:01
我在 JS 中有以下 var 形式的文本,这是我从另一个函数中获取的。    var text = '["{"a1":"zxcv","a2":"pqrs","c2":[1,2,3],"a3":{"aa3":"asdfgh","aa5":null}}","{"a1":"xyz","a2":"mno","c2":[103],"a3":{"aa8":"qwerty"}}"]';我需要检查 a1、a2、c2 的计数及其值以及 a3 及其值。例如:a1:2、a2:2、c2:4、a3:3 等等(子元素的数量也是如此)我想得到我的结果的粗略方法是首先删除第一个和最后一个 " 并用 }," 替换 },"{ 这给了我一个 json 对象数组,然后使用 JSON.parse 给了我一个更好的结构转换我可以轻松地遍历它。我找不到任何库或其他解决方案作为替代方案。 var text = '["{"a1":"zxcv","a2":"pqrs","c2":[1,2,3],"a3":{"aa3":"asdfgh","aa5":null}}","{"a1":"xyz","a2":"mno","c2":[103],"a3":{"aa8":"qwerty"}}"]';        console.log(text);        text = text.replace(/\["{/g, "[{"); // remove first double quote        text = text.replace(/\}"]/g, "}]"); // remove last double quote        text = text.replace(/\}","{/g, "},{"); // replace middle quotes        console.log(text);        var formattedText = JSON.parse(text);        console.log(formattedText);我以对象形式获取它后的预期输出,然后我可以遍历对象并使用计数器来维护计数:a1:2,a2:2,c2:4,a3:3是否有任何功能(内置或带有库)可以帮助我解决这个问题?
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 182 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信