我怎么能在JQuery中解析这个JSON对象?

时间:2013-07-17 18:43:56

标签: jquery json parsing

我有一个JSON对象没有给出三个值的键(每个都是一个数组),我想解析它们。我怎么能在JQuery中做到这一点?

[
    {
        "cid": "3",
        "pid": "0",
        "nid": "12",
        "uid": "4",
        "subject": "test2",
        "hostname": "127.0.0.1",
        "created": "1374084646",
        "changed": "1374084645",
        "status": "1",
        "thread": "02/",
        "name": "chrisr",
        "mail": "",
        "homepage": "",
        "language": "en",
        "uuid": "e4729a69-7f6f-4091-98a0-0a040fe683f1",
    },
    {
        "cid": "2",
        "pid": "0",
        "nid": "13",
        "uid": "4",
        "subject": "TEST comment 2",
        "hostname": "127.0.0.1",
        "created": "1374072245",
        "changed": "1374072244",
        "status": "1",
        "thread": "01/",
        "name": "chrisr",
        "mail": "",
        "homepage": "",
        "language": "en",
        "uuid": "b4d5a084-8aa3-4828-b6e4-17396cbaf2f6",
    },
    {
        "cid": "1",
        "pid": "0",
        "nid": "12",
        "uid": "4",
        "subject": "test comment",
        "hostname": "127.0.0.1",
        "created": "1374072176",
        "changed": "1374072175",
        "status": "1",
        "thread": "01/",
        "name": "chrisr",
        "mail": "",
        "homepage": "",
        "language": "en",
        "uuid": "7ade4906-7d6e-4cad-9f97-7f43eadea731",
    }
]

2 个答案:

答案 0 :(得分:5)

您的JSON无效。

创建有效的JSON字符串后,解析它非常简单。

使用以下步骤:

  1. 删除每个对象的最后一个属性后的逗号
  2. 删除换行符
  3. 将JSON文本换成单引号
  4. 在文字
  5. 上致电jQuery.parseJSON()

    这是working fiddle

    它的确是这样的:

    var jsonText = '[ { "cid": "3", "pid": "0", "nid"...} ]';
    var jo = $.parseJSON(jsonText);
    

答案 1 :(得分:2)

如果你有字符串形式的JSON,你可以使用JSON.parse [MDN] 以对象形式获取它,然后使用它是你需要的。

现代浏览器本身具有此功能 - 不需要jQuery - 但您也可以从其中一个位置自行添加它:

有关更完整的列表,请参阅JSON.org