0

我是 JSON 新手,我必须处理一个复杂的问题。

请看下图:

在此处输入图像描述

它有一个错误:

在此处输入图像描述

我不知道如何正确分离 2 个 json 数组。我什至尝试使用:而不是,第 18 行,但仍然出现错误。顺便说一句,我使用http://jsonlint.com/进行验证。

4

6 回答 6

3

在第 2 行,您提供了一个密钥,但在第 19 行没有这样做。您必须保留结构。

删除第 2 行的键,它们不应该以这种方式用于数组。

编辑:此外,您正在尝试将数组放在对象中,将开始和结束对象标记 ({}) 与 ([]) 切换为第一行和最后一行上的数组。

于 2013-01-29T04:01:45.563 回答
1
[
  [
    {...},
    {...},
    ...
    {...}
  ],
  [
    {...},
    {...},
    ...
    {...}
  ],
  ...
  [
    {...},
    {...},
    ...
    {...}
  ]
]
于 2013-01-29T04:06:48.180 回答
1

我相信构建这个 JSON 的正确方法应该是:

{
  "glEntries": [
    {
        "generalLedgerId":1,
        "accountId": 34,
        "amount" : 32334.23,
        "descripction": "desc1",
        "debit" : "Yes"
    },
    {
       "generalLedgerId":2,
        "accountId": 35,
        "amount" : 323.23,
        "descripction": "desc",
        "debit" : "Yes"
    },
    ...
 ]
}
于 2013-01-29T04:23:39.293 回答
1

构造 JSON 数据的方法有很多,但这取决于您的数据以及您想要呈现它的方式。这里有几个例子 - 希望它有所帮助:

{
    "glEntries": [
        {
            "object1-prop1": "one"
        },
        {
            "object2-prop1": 1,
            "object2-prop2": "two"
        },
        {
            "object3-prop1": [
                "a",
                "r",
                "r",
                "a",
                "y"
            ],
            "object3-prop1.1": "string"
        }
    ],
    "otherEntries": [
        {
            "objectx": "x"
        },
        {
            "objecty": "y"
        },
        {
            "objectz": [
                1,
                2,
                3,
                4
            ]
        }
    ],
    "oneEntry": "json"
}

其他示例:

[
    {
        "obj1-prop": 222
    },
    {
        "obj2-prop": "object2"
    },
    {
        "obj3-prop": "Object3"
    },
    [
        "a",
        "r",
        "r",
        "a",
        "y",
        777,
        888
    ],
    "string",
    178,
    {
        "objectProp": "testing123"
    }
]
于 2013-01-29T04:24:07.713 回答
1

您拥有的{}不仅仅是需要,而且会使解析 JSON 变得更加困难:

结构会像这样更好地工作:

{"glentries":[

    { "property1":"value", "property2" : "value",.....  "lastProperty": "value"},
    { "property1":"value", "property2" : "value",.....  "lastProperty": "value"},
    { "property1":"value", "property2" : "value",.....  "lastProperty": "value"}

 ]
}

现在 glentries 是一个具有多个属性的对象数组。

 alert( glentries[0].property2 )
于 2013-01-29T04:25:10.180 回答
0

父结构是一个对象,因此它需要第二个数组的字符串键。它应该是一个数组数组,你应该使用一个数组而不是一个对象。

于 2013-01-29T04:01:10.290 回答