JSON.parse,我做错了啥?
Posted
技术标签:
【中文标题】JSON.parse,我做错了啥?【英文标题】:JSON.parse, what am I doing wrong?JSON.parse,我做错了什么? 【发布时间】:2017-03-13 22:23:54 【问题描述】:所以,我正在尝试在 javascript 中解析一些 JSON。这感觉它应该可以工作,但我遇到了一个错误。这是函数调用:
JSON.parse("player: 'green', direction: 'north'");
这是错误
VM156:1 Uncaught SyntaxError: Unexpected token p in JSON at position 1
at Object.parse (native)
at <anonymous>:1:6
我在一个空的网页上尝试这个,没有 JS 库。
字符串,只是在 Javascript 中执行时创建了一个具有两个预期属性的对象。
我尝试将键包装在字符串中。那没有解析。
意外的标记似乎是第一个字母。
我做错了什么,我该如何解析这个对象?
【问题讨论】:
你没有传递 JSON,这对于期望 JSON 的函数来说是个问题 @adeneo 可能这并没有达到我的预期。你能举个有效的例子吗? jsonlint.com 是你的朋友,json.org 的规范也是如此 在 JSON 中,键和值总是用双引号引起来,除非值是数字或其他“对象”等。 请记住,在创建对象时,JSON 比 javascript 表示法更严格。 【参考方案1】:那不是valid JSON。
试试这个:
JSON.parse('"player": "green", "direction": "north"');
注意双引号 "
而不是单引号 '
和对象键周围的引号。
【讨论】:
以上是关于JSON.parse,我做错了啥?的主要内容,如果未能解决你的问题,请参考以下文章