繁体   English   中英

如何在没有开始和结束字符串引号的情况下解析 json 字符串?

[英]How can i parse json string without the opening and closing string quotes?

如何在没有开始和结束引号的情况下解析以下 json 字符串? 似乎 javascript JSON.parse function 正在用引号解析字符串。 因此引发语法错误。

这是我的字符串;

"[
    {
        "pk": 1,
        "model": "pms.category",
        "fields": {
            "name": "Rent",
            "add_date": "2011-07-28 01:33:21",
            "agent": 3,
            "category_type": "I",
            "add_user": 3,
            "desc": "Rent"
        }
    },
    {
        "pk": 2,
        "model": "pms.category",
        "fields": {
            "name": "Deposit Rent",
            "add_date": "2011-07-28 01:33:21",
            "agent": 3,
            "category_type": "I",
            "add_user": 3,
            "desc": "Rent Deposit"
        }
    }
]"

编辑:有趣的是,当我运行我的开发机器的这个字符串时,它被正确解析,但在生产服务器上它失败了。

替换开始和结束引号,然后解析字符串:

s = s.replace(/^"|"$/g, '');
var jsonDoc = JSON.parse(s);

此外,向发出格式错误的 JSON 的程序或库的作者提交错误报告。

您可能应该从字符串中删除外引号...

mystring = mystring.replace(/^"|"$/g,'')

1.这应该是你的 JSON 格式,否则,它不会被 JSON.parse 正确解析

[
        {
            "pk": 1,
            "model": "pms.category",
            "fields": {
                "name": "Rent",
                "add_date": "2011-07-28 01:33:21",
                "agent": 3,
                "category_type": "I",
                "add_user": 3,
                "desc": "Rent"
            }
        },
        {
            "pk": 2,
            "model": "pms.category",
            "fields": {
                "name": "Deposit Rent",
                "add_date": "2011-07-28 01:33:21",
                "agent": 3,
                "category_type": "I",
                "add_user": 3,
                "desc": "Rent Deposit"
            }
        }
    ]

2.在头部标签之间包含来自 github 存储库的 json2.js。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM