繁体   English   中英

JSON.parse中允许哪些字符?

[英]What characters arent allowed in a JSON.parse?

因此,在收到我的回复后,我不断收到解析错误。 有非法字符吗?

这是回应

[{"businessID": ChIJ49DlQ5NiwokRQ_noyKqlchQ,"latitude": 40.733038,"longitude":-73.6840691,"address":"1201
Jericho Turnpike, New Hyde Park","businessname":"SUBWAY®Restaurants"},{"businessID": ChIJZfl6R5NiwokRZo7PU4NPoMY
,"latitude": 40.7329359,"longitude":-73.684513,"address":"1113 Jericho Turnpike, New Hyde Park","businessname"
:"Gino's"},{"businessID": ChIJcbpnRJNiwokRrtbOKe7HQo0,"latitude": 40.733049,"longitude":-73.684006,"address"
:"1203 Jericho Turnpike, New Hyde Park","businessname":"Wong's Garden"},]

这是我处理响应的函数。 我肯定知道它在警报之前中断了,因为没有触发警报

var datad = $(msg).text();
    console.log(datad);
    var resultstring = datad.replace(',]',']');
    var JsonParseData = JSON.parse(resultstring);
        alert(JsonParseData); ///BREAKING BEFORE THIS LINE

几个错误。

  1. 需要在双引号( " )中放入字符串。将"businessID": ChIJ49DlQ5NiwokRQ_noyKqlchQ替换为"businessID":"ChIJ49DlQ5NiwokRQ_noyKqlchQ"

  2. 取出,在下面一行的末尾"businessname":"Wong's Garden"},]

JSON的键值需要用引号引起来。 JSON数据中的引号较少,最后还有一个逗号和一个回车

像这样是正确的:

[{"businessID":"ChIJ49DlQ5NiwokRQ_noyKqlchQ","latitude":"40.733038","longitude":"-73.6840691","address":"1201 Jericho Turnpike, New Hyde Park","businessname":"SUBWAY®Restaurants"},{"businessID":"ChIJZfl6R5NiwokRZo7PU4NPoMY","latitude":"40.7329359","longitude":"-73.684513","address":"1113 Jericho Turnpike, New Hyde Park","businessname":"Gino's"},{"businessID":"ChIJcbpnRJNiwokRrtbOKe7HQo0","latitude":"40.733049","longitude":"-73.684006","address":"1203 Jericho Turnpike, New Hyde Park","businessname":"Wong's Garden"}]

您的响应是无效的json格式,原因有两个:

  • “ businessID”的值需要用引号引起来。
  • JSON的最后一个对象后不应有逗号(您的替换字符串函数可解决此问题)。

我建议您使用以下JSON工具包:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM