Javascript 使用.map解析JSON对象时出现问题
我返回了这个JSON对象,并试图对其进行解析,以获取Javascript 使用.map解析JSON对象时出现问题,javascript,jquery,json,Javascript,Jquery,Json,我返回了这个JSON对象,并试图对其进行解析,以获取标识符中的值。如果Iconsole.logit,对象的外观如下: Object {rows: Array[33], time: 0.015, fields: Object, total_rows: 33} fields: Object rows: Array[33] 0: Object cartodb_id: 28 coordinates: "41.959836,-87.681545" create
标识符中的值。如果Iconsole.log
it,对象的外观如下:
Object {rows: Array[33], time: 0.015, fields: Object, total_rows: 33}
fields: Object
rows: Array[33]
0: Object
cartodb_id: 28
coordinates: "41.959836,-87.681545"
created_at: "2015-03-05T14:40:43Z"
id: "28"
identifier: "Store Number: 28"
1: Object
2: Object
下面是我试图解析它的方式:
$.getJSON('https://URLHERE, function(data) {
console.log(data);
var ticks6 = data.rows.map(function() {
return data.rows.identifier;
});
勾选6
返回一个数组,其中所有值均为“未定义”。我在这里尝试了很多不同的组合,但无法解析出正确的片段
$.getJSON('https://URLHERE', function(data) {
console.log(data);
var ticks6 = data.rows.map(function(ele) {
return ele.identifier;
});
console.log(ticks6);
});
在.map
函数中,您访问的是数据.rows
,这是整个数组。您想要访问ele
(传递给回调的第一个参数),它是数组中的每个元素
在.map
函数中,您访问的是数据.rows
,这是整个数组。您想访问ele
(传递给回调的第一个参数),它是数组中的每个元素。接受一个针对数组中每个项目运行的函数。返回值是保存在数组的该插槽中的值。所以你可能想写:
var ticks6 = data.rows.map(function(row) {
return row.identifier;
});
获取对数组中的每个项运行的函数。返回值是保存在数组的该插槽中的值。所以你可能想写:
var ticks6 = data.rows.map(function(row) {
return row.identifier;
});
data.rows.identifier
确实未定义,您期望得到什么?data.rows.identifier
确实未定义,您期望得到什么?这就成功了。谢谢有人猜测为什么数据以某种随机顺序返回吗?存储#28-33,然后1-11,然后13-27,然后12。它们在我的列表中的顺序是1-33table@jonmrich:你是如何制作JSON的?您是否在查询中添加了一个排序依据
。谢谢有人猜测为什么数据以某种随机顺序返回吗?存储#28-33,然后1-11,然后13-27,然后12。它们在我的列表中的顺序是1-33table@jonmrich:你是如何制作JSON的?您是否在查询中添加了一个orderby
?如果没有orderby
,MySQL将不知道如何对行进行排序。