Javascript 如何使用jquery解析解析反斜杠json结构?
这是我的密码。我使用了jquery解析。你能帮帮我吗?如何解析这个Javascript 如何使用jquery解析解析反斜杠json结构?,javascript,jquery,ajax,json,angularjs,Javascript,Jquery,Ajax,Json,Angularjs,这是我的密码。我使用了jquery解析。你能帮帮我吗?如何解析这个 var jsondata= { "forms": [ "{\"lat\":11.913859799999999,\"lng\":79.8144722}", "{\"lat\":11.913859799999999,\"lng\":79.8144722}" ] } var a=$.parseJSON(jsondata); alert(a.forms[0].lat); // not working show
var jsondata= {
"forms": [
"{\"lat\":11.913859799999999,\"lng\":79.8144722}",
"{\"lat\":11.913859799999999,\"lng\":79.8144722}"
]
}
var a=$.parseJSON(jsondata);
alert(a.forms[0].lat); // not working show "undefined"
错误:
未捕获的语法错误:意外标记
必须解析forms[0]元素才能将其转换为真实对象:
var jsondata={
表格:[
{\lat\:11.9138597999999\lng\:79.8144722},
{\lat\:11.9138597999999\lng\:79.8144722}
]
}
var result=document.querySelector'pre';
result.textContent=JSON.parsejsondata.forms[0].lat;
//^在这里解析
//解析jsondata.forms的所有元素:
//首先:将jsondata.forms的元素转换为对象
jsondata.forms=jsondata.forms.mapfunction v{return JSON.parsev;};
//现在jsondata.forms元素是对象
result.textContent+='\n\n转换后的jsondata.forms数组\n'+
JSON.stringifyjsondata.forms,null,,+
'\n\nso:jsondata.forms[1].lng='+jsondata.forms[1].lng;
我认为后端对您的应用程序产生了错误的响应 这样的示例假设我有一个
echo json_encode(json_encode($data));die();
和使用
"{\"default\":[{\"email\":\"sample@gmail.com\",\"username\":\"username1\"},{\"email\":\"sample@yahoo.com\",\"username\":\"username2\"},{\"email\":\"sample@hot.com\",\"username\":\"username3\"}],\"title\":\"Sample\"}"
会产生这样的数据吗
echo json_encode($data);die();
但如果只使用
{
"default": [
{
"email": "sample@gmail.com",
"username": "username1"
},
{
"email": "sample@yahoo.com",
"username": "username2"
},
{
"email": "sample@hot.com",
"username": "username3"
}
],
"title": "Sample"
}
它将创建一个有效的json数据
var jsondata= {
"forms": [
"{\"lat\":11.913859799999999,\"lng\":79.8144722}",
"{\"lat\":11.913859799999999,\"lng\":79.8144722}"
]
};
使用您的数据
$.each(jsondata.forms, function(i, me){
console.log(JSON.parse(me));
});
并使用一些jQuery代码:
for (var i = 0; i < jsondata.forms.length; i++) {
console.log(JSON.parse(jsondata.forms[i]));
}
使用navitejavascript
{lat: 11.913859799999999, lng: 79.8144722}
{lat: 11.913859799999999, lng: 79.8144722}
JSON不是JavaScript!它是一种数据序列化格式 不需要jQuery——JavaScript语言提供了原生的JSON.parse和JSON.stringify JSON数据必须是传递给parse的一个长字符串 必须引用JSON键
为什么文本中有反斜杠?我使用的是sailsjs后端。返回此格式的json。我已经存储了我的db字段json值结构。所以这里没有什么需要解析的,jsondata已经是一个对象了。试着提供一个实际演示您的问题的代码示例。是的。未捕获语法错误:此错误的意外标记显示var a=JSON.parsejsondata.forms;forvar i=0;我
{lat: 11.913859799999999, lng: 79.8144722}
{lat: 11.913859799999999, lng: 79.8144722}
var jsondata =
"{ \"forms\": ["
+ "{\"lat\":11.913859799999999,\"lng\":79.8144722} , "
+ "{\"lat\":11.913859799999999,\"lng\":79.8144722} ] }"
var a = JSON.parse(jsondata)