Javascript json eval给出了一个错误
我对下面的JSON使用eval,但得到语法错误:应为']'消息。我没有得到我所缺少的东西。 我的javascript stmt是Javascript json eval给出了一个错误,javascript,json,Javascript,Json,我对下面的JSON使用eval,但得到语法错误:应为']'消息。我没有得到我所缺少的东西。 我的javascript stmt是 eval('var jsonResponse = ('+response+')'); 答复包括以下内容: {iserror:"false",employees:["employee":{"employeeNbr":"SAN1234509","emplType":"SAN","agencyNbr":"","producerNbr":"123456789","rem
eval('var jsonResponse = ('+response+')');
答复包括以下内容:
{iserror:"false",employees:["employee":{"employeeNbr":"SAN1234509","emplType":"SAN","agencyNbr":"","producerNbr":"123456789","remiCode":"SA","agentRate":"SA","typeCode":"I","reasonTxt":"S3","rsnDescription":"null","ymdeff":"20130101","ymdend":"20130101","voidtxt":"V","brokerName":"429610583","brokerNpn":"429610583","ymdtrans":"null","opNbr":"null"},
"employee":{"employeeNbr":"SAN1234509","emplType":"SAN","agencyNbr":"xxxxx-C","producerNbr":"1234567890,"remiCode":"SA","agentRate":"SA","typeCode":"I","reasonTxt":"S3","rsnDescription":"null","ymdeff":"20130101","ymdend":"20130101","voidtxt":"","brokerName":"429610583","brokerNpn":"429610583","ymdtrans":"null","opNbr":"null"},
"employee":{"employeeNbr":"SAN1234509","emplType":"SAN","agencyNbr":"","producerNbr":"123456789","remiCode":"SA","agentRate":"SA","typeCode":"I","reasonTxt":"S3","rsnDescription":"null","ymdeff":"20130101","ymdend":"20130101","voidtxt":"V","brokerName":"429610583","brokerNpn":"429610583","ymdtrans":"null","opNbr":"null"}]}
首先,您声称它是JSON,但事实并非如此。例如,
iserror
周围需要引号才能成为JSON
具体来说,
{iserror:"false",employees:[...]}
应该是
{"iserror":"false","employees":[...]}
但是,因为您实际上将字符串传递给JavaScript解析器(eval),所以它只需要是JavaScript,而不是JSON。它也不是有效的JavaScript,这就是为什么会出现错误 你有
{
iserror:"false",
employees:[
"employee":{...},
"employee":{...},
"employee":{...}
]
}
“员工”
之后的:
是错误的。也许你想用
{
iserror:"false",
employees:[
{...},
{...},
{...}
]
}
还有,你有
"producerNbr":"1234567890,"remiCode":"SA"
而不是
"producerNbr":"1234567890","remiCode":"SA"
如果只看语法突出显示,您会注意到,这不是有效的代码。一般来说,尝试使用
JSON.parse()
执行此类任务,但您的数据必须是“真实”的JSON。这不是JSON。例如,iError
周围需要引号才能成为JSON,JSLint讨厌那里的对象……我会去查看它以查看所有错误:www.JSLint.com,“
应该是”,
在producerNbr的第二行:
:“1234567890”,remiCode“:另外,不要自己创建/解析JSON,请使用@VisioN之类的序列化程序。