Javascript 无法像我预期的那样访问JSON对象
我执行一个ajax调用:Javascript 无法像我预期的那样访问JSON对象,javascript,jquery,Javascript,Jquery,我执行一个ajax调用: $.ajax({ url: '/foo/getData', dataType: 'json', async: false, success: function(data){ lat = data.project_x; lng = data.project_y; zoomin = parseInt(data.mapzoom);
$.ajax({
url: '/foo/getData',
dataType: 'json',
async: false,
success: function(data){
lat = data.project_x;
lng = data.project_y;
zoomin = parseInt(data.mapzoom);
console.log(data);
}
});
并返回:
[{"id":"3","project_x":"42.456","project_y":"-70.123","zoom":"7"},{"id":"3","project_x":"41.123","project_y":"-71.456","zoom":"7"}]
console.log(数据)
为我提供:
Object
id: "3"
project_x: "42.456"
project_y: "-70.123"
然而,当我试图将这些值赋给某个对象时,我得到了未定义的。例子:
console.log(data.project_x)
返回未定义的undefined
,而我希望它返回42.456
我在这里做错了什么?因为你的结果是一个数组,你需要访问你想要的位置,例如:
lat = data[0].project_x;
或者,根据您的需要,在数组中循环并使用每个值……代码中不清楚您到底在追求什么,但重要的是属性不在返回的对象上……它们在返回的数组中的对象上
循环可以如下所示:
$.each(data, function() {
alert(this.project_x); //access properties off this
});
是因为数据是json的数组吗?可能是console.log(数据[0].project\u x);