我有一个通过AJAX调用拉入数据的函数。我正在创建一个我想在其他函数中访问的对象。所以我想将数据发送到另一个全局对象。
这是当前的javascript:
var foursquareMapData = [];
function MapData() {
$.ajax({
dataType: 'jsonp',
url: 'https://s3.amazonaws.com/sxsw_trending/sxsw_trending.json',
jsonp: "callback",
jsonpCallback: "sxswTrending",
success: function (data) {
//console.log(data);
// var foursquareMapData = [];
for (var i = 0; i < data.Trending.length; i++) {
var mapData = {
index: i + 1,
lat: data.Trending[i].lat,
lng: data.Trending[i].lng,
count: data.Trending[i].hereNow,
address: data.Trending[i].address
}
//console.log(mapData);
foursquareMapData.push(mapData);
}
//console.log(foursquareMapData);
}
});
}
console.log(foursquareMapData);
将'mapData'对象推入foursqureMaData似乎不起作用。我可能不会这么做吗?
答案 0 :(得分:0)
那是因为你在ajax调用结束之前调用了控制台日志。尝试在ajax成功函数结束时输出它,然后它应该是正确的。
[编辑]
哦,刚看到你在成功函数结束时已经有了一个console.log。没有显示正确的数据?
[EDIT2]
你可以在某个地方拨打MapData()
,对吗?因为它不在您的代码中。