当前位置:  开发笔记 > 编程语言 > 正文

JSON没有很好的错误

如何解决《JSON没有很好的错误》经验,为你挑选了1个好方法。

在下面的代码中,


        
        JSON ex
        

        
    
    

    

result.json

{
    'name': 'Account1',
    'marketValue': '10990',
    'cash': '199926',
    'legend': 'orange'
},
{
    'name': 'Account2',
    'marketValue': '156590',
    'cash': '133856',
    'legend': 'darkorange'
}

我看到JSON not well formed错误.result.json坐在同一个文件夹中.

由于此错误,请为accountGrid空.

not well formed在执行时说错误是什么意思jQuery.getJSON



1> sdgluck..:

让我们考虑一下JSON的语法 ......

JSON必须是单个值(对象,数组等)

JSON对象应该是单个值.你有两个用逗号分隔的对象.也许您可以将每个作为单个对象的成员分配.

# a JSON object consists of a single value definition
value
    string
    number
    object
    array
    true
    false
    null

# this value can be an object
object
    {}
    { members }

# or an array
array
    []
    [ elements ]

______

单引号是非法的

JSON禁止'对字符串使用单引号().

# a string consists of chars wrapped in double-quotation marks
string
    ""
    " chars "

因此,将所有单引号替换为双引号.

考虑到以上两点,你最终会得到这样的结论:

{
    "key1": {
        "name": "Brokerage Account 3",
        "marketValue": "1999990",
        "cash": "1995826",
        "legend": "orange"
    },
    "key2": {
        "name": "Account 3",
        "marketValue": "1949990",
        "cash": "1695856",
        "legend": "darkorange"
    }
}

[ 尝试在线 ]

______

将对象放在数组中

或者,正如@Gerald Schneider所建议的那样,将对象放在数组中.规范说value(上面定义)可以是array:

array
    []
    [ elements ] # elements can multiple values, e.g. objects

所以你的JSON看起来像这样:

[
    {
        "name": "Account1",
        "marketValue": "10990",
        "cash": "199926",
        "legend": "orange"
    },
    {
        "name": "Account2",
        "marketValue": "156590",
        "cash": "133856",
        "legend": "darkorange"
    }
]

[ 尝试在线 ]

______

使用解析的JSON(JSON是一个数组)

如果您将数据表示为数组,则回调应该只将结果解析的JSON分配给accountGrid变量:


或者,如果要将条目的值附加到accountGrid:

accountGrid = accountGrid.concat(entry);

______

将来编写JSON

我建议您在支持JSON语法高亮的IDE中编辑JSON文件,然后在编辑器中引发这些问题.或者,使用众多在线工具中的一种.


就个人而言,我只是通过将它包含在`[]`中来使它成为一个数组.使循环更容易.
推荐阅读
手机用户2502851955
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有