我有一个在JSONlint中验证过的JSON,但我不能使用JSON.parse(),因为它不工作。这里的JSON有什么问题,如果不能使用JSON.prase(),我的替代方法是什么?
JSON字符串:"{Products: [{Id: 1,Increment: 5,Max: 1000,Min: 25,allowed: false,Desc: product description,Name:Product Name,Qty: 0}]}"
发布于 2018-02-14 03:12:31
要使JSON有效,您的对象键必须包含在双引号中:
{ "validKey": 123 }
^ ^
| |
------------- These double-quotes are required!JSONLint说这没问题,因为你在这里粘贴的时候也粘贴了JSON,用引号括起来:
"{Products: [{Id: 1,Increment: 5,Max: 1000,Min: 25,allowed: false,Desc: product description,Name:Product Name,Qty: 0}]}"这是一个内部有json的JSON字符串,而不是JSON!
如果您尝试不带引号的JSONLint,您将得到此错误:
Error: Parse error on line 1:
{ Products: [{ Id: 1
--^
Expecting 'STRING', '}', got 'undefined'发布于 2018-02-14 03:06:12
你的字符串和关键字应该加引号。这是将由JSON.parse()正确解析的有效JSON
{
"Products": [
{
"Id": 1,
"Increment": 5,
"Max": 1000,
"Min": 25,
"allowed": false,
"Desc": "product description",
"Name": "Product Name",
"Qty": 0
}
]
}您可以在此处阅读有关该标准的更多信息:https://www.json.org/
https://stackoverflow.com/questions/48773832
复制相似问题