【问题标题】:Error evaluating Javascript datastructure using JSON.parse使用 JSON.parse 评估 Javascript 数据结构时出错
【发布时间】:2017-04-08 01:06:05
【问题描述】:

我将以下内容存储为 javascript 变量:

"{'Headings': 
    [{'name': 'Behavior', 'majorTopic': 'N', 'vote': {'down': 1, 'up': 1}},
     {'name': 'Brain Mapping', 'majorTopic': 'N'}, 
     {'name': 'Evoked Potentials', 'majorTopic': 'N'}
 ]}"

使得变量的类型是一个字符串。 我正在尝试评估字符串以获取字典:

{"headings":[{"name":behavior,'majorTopic':"N", 'vote':{'down':1,'up':1}}]}

但是当我尝试使用 eval(variable) 或 JSON.parse(variable) 时,我得到了错误:

Uncaught SyntaxError: Unexpected token :
    at eval For eval 

VM529:1 Uncaught SyntaxError: Unexpected token ' in JSON at position 1
    at JSON.parse (<anonymous>)` For the JSON.parse function. 

我认为该错误与投票字典的嵌套有关,其中包含赞成票和反对票, 但是当我独立评估这样的嵌套语句时,我没有遇到任何问题。

如何在评估此语句时保留嵌套投票选项卡?

【问题讨论】:

标签: javascript jquery json dictionary


【解决方案1】:

您必须在 JSON 字符串中使用双引号。除此之外没问题,应该解析没有问题。

【讨论】:

    【解决方案2】:

    尝试创建一个有效的 json:

    {
    "Headings": [{
        "name": "Behavior",
        "majorTopic": "N",
        "vote": {
            "down": 1,
            "up": 1
        }
    }, {
        "name": "Brain Mapping",
        "majorTopic": "N"
    }, {
        "name": "Evoked Potentials",
        "majorTopic": "N"
    }]
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-04-01
      • 1970-01-01
      • 2013-12-19
      • 2021-02-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多