【发布时间】:2016-08-25 12:03:05
【问题描述】:
我知道这个问题已经被问过了,但我找不到我想要的答案。
我试图循环在ajax 响应之后以JSON data 格式获得的数据。
我的 Javascript 代码是:
function ajaxMe(){
$(function(){
$.ajax({
type : 'GET',
url : 's-test.php'
}).done(function(data){
values = [data];
alert(data)
})
});
}
在成功接收到values 变量中的数据后,我尝试在console 中使用console.log(JSON.stringify(values)) 打印它,结果如下:
["\r\n {\"lat\" : \"51.508742\", \"ln\" : \"-0.320850\" , \"name\" : \"my corporation\"},\r\n {\"lat\" : \"51.508742\", \"ln\" : \"-0.420850\" , \"name\" : \"my corporation\"},\r\n {\"lat\" : \"51.508742\", \"ln\" : \"-0.520850\" , \"name\" : \"my corporation\"},\r\n {\"lat\" : \"51.508742\", \"ln\" : \"-0.620850\" , \"name\" : \"my corporation\"},\r\n {\"lat\" : \"51.508742\", \"ln\" : \"-0.720850\" , \"name\" : \"my corporation\"},\r\n {\"lat\" : \"51.508742\", \"ln\" : \"-0.820850\" , \"name\" : \"my corporation\"},\r\n {\"lat\" : \"51.508742\", \"ln\" : \"-0.920850\" , \"name\" : \"my corporation\"},\r\n {\"lat\" : \"51.508742\", \"ln\" : \"-1.320850\" , \"name\" : \"my corporation\"},\r\n {\"lat\" : \"51.508742\", \"ln\" : \"-2.320850\" , \"name\" : \"my corporation\"},\r\n {\"lat\" : \"51.508742\", \"ln\" : \"-3.320850\" , \"name\" : \"my corporation\"}\r\n"]
而不是
[{"lat" : "51.508742", "ln" : "-0.320850" , "name" : "my corporation"},
{"lat" : "51.508742", "ln" : "-0.420850" , "name" : "my corporation"},
{"lat" : "51.508742", "ln" : "-0.520850" , "name" : "my corporation"},
{"lat" : "51.508742", "ln" : "-0.620850" , "name" : "my corporation"},
{"lat" : "51.508742", "ln" : "-0.720850" , "name" : "my corporation"},
{"lat" : "51.508742", "ln" : "-0.820850" , "name" : "my corporation"},
{"lat" : "51.508742", "ln" : "-0.920850" , "name" : "my corporation"},
{"lat" : "51.508742", "ln" : "-1.320850" , "name" : "my corporation"},
{"lat" : "51.508742", "ln" : "-2.320850" , "name" : "my corporation"},
{"lat" : "51.508742", "ln" : "-3.320850" , "name" : "my corporation"}]
并且在使用forEach 时无法循环此object:
values.forEach(function(v, i){
alert(i);
});
它是如何工作的。? 谢谢。
【问题讨论】:
-
您将
data转换为string。尝试使用JSON.parse(data)来取回JSON对象。 -
如果那是你的数据,看起来你的服务器没有正确返回数据
-
莫名其妙的
JSON.stringify趋势的另一个受害者。如今,我们充斥着将数据结构(JSON)转换为线性字符链(字符串)的人,然后不明白为什么他们再也看不到他们的数据结构了。我只是无法解释每个人是如何做到这一点的。 -
而不是
JSON.stringify我无法循环数据,当我循环数据时它只运行一次并返回整个对象而不是一个一个运行。
标签: javascript php jquery json ajax