Javascript 未捕获的语法错误:JSON中位置13处的意外标记c
我有一个字符串(var),在javascript中解析为JSON。但一旦我这样做了,我就会得到一个错误 未捕获的语法错误:JSON中位置13处的意外标记cJavascript 未捕获的语法错误:JSON中位置13处的意外标记c,javascript,json,parsing,jsonparser,Javascript,Json,Parsing,Jsonparser,我有一个字符串(var),在javascript中解析为JSON。但一旦我这样做了,我就会得到一个错误 未捕获的语法错误:JSON中位置13处的意外标记c 是什么导致了这个错误?这是因为任何特殊字符吗?首先,您的JSON无效。其次,它不是一个JSON字符串,而是一个JavaScript对象本身。不需要再次解析它。如果对象有效,则可以直接访问它,而无需进一步解析 这是我修正的数据 var DL_response = { "result":{ "cov
是什么导致了这个错误?这是因为任何特殊字符吗?首先,您的JSON无效。其次,它不是一个JSON字符串,而是一个JavaScript对象本身。不需要再次解析它。如果对象有效,则可以直接访问它,而无需进一步解析 这是我修正的数据
var DL_response = {
"result":{
"cov_details":[
{
"issue_date":"UNIT OFFICE,NEYVELI",
"cov":"MCWG"
}
],
"dl_number":"TN39Y20100000784",
"address":"PERIYA COLONY KO PAVAZHANGUDI VIRUDHACHALAM TK",
"issue_date":"24-03-2020",
"dob":"21-03-1971",
"name":"VICNESWARANS",
"blood_group":"",
"validity":{
"transport":"",
"non-transport":"24-03-2010 to 23-03-2030"
},
"father_husband":"SELVARAJ",
"status-code":"101",
"request_id":"a9642ae9-2f10-4e9a-9f7e-c3ee1a9a2dbe"
}
}
console.log(DL_response.result.dob)
// output: 21-03-1971
无效的json。使用诸如json validato之类的在线工具来验证json,因为json在第13位是无效的,根据json语法规则,在该位置发现了一个不符合预期的
c
。您需要修复生成JSON的任何内容。如果它真的以{“result”开头:“{”c
,它确实是无效的,因为第四个“
(就在c
之前)关闭在两个字符之前启动的字符串。看起来生成该结果的任何东西都是手动生成字符串,这是一种反模式。相反,在内存中构建结果结构,并使用平台中内置的任何JSON序列化来序列化整件事。如错误所示,JSON无效。您的DL_response
甚至不是一个字符串。你将如何解析它?假设在发布时丢失了转义符,那么在错误的位置仍然有大量引号。。。
var DL_response = {
"result":{
"cov_details":[
{
"issue_date":"UNIT OFFICE,NEYVELI",
"cov":"MCWG"
}
],
"dl_number":"TN39Y20100000784",
"address":"PERIYA COLONY KO PAVAZHANGUDI VIRUDHACHALAM TK",
"issue_date":"24-03-2020",
"dob":"21-03-1971",
"name":"VICNESWARANS",
"blood_group":"",
"validity":{
"transport":"",
"non-transport":"24-03-2010 to 23-03-2030"
},
"father_husband":"SELVARAJ",
"status-code":"101",
"request_id":"a9642ae9-2f10-4e9a-9f7e-c3ee1a9a2dbe"
}
}
console.log(DL_response.result.dob)
// output: 21-03-1971