Javascript jQuery解析数据,获取lat和lng,并插入到Google地图中`

Javascript jQuery解析数据,获取lat和lng,并插入到Google地图中`,javascript,jquery,json,chartbeat,Javascript,Jquery,Json,Chartbeat,我使用jQuery从以下URL获取JSON: http://api.chartbeat.com/live/geo/v3/?apikey=fakekeytoshowtheurl&host=example.com 下面是我得到的JSON示例: "lat_lngs": [[25, -80, 9], [26, -80, 6], [27, -80, 1], [29, -98, 2], [29, -95, 7], [30, -97, 3], [33, -117, 6], [33, -112, 25

我使用jQuery从以下URL获取JSON:

http://api.chartbeat.com/live/geo/v3/?apikey=fakekeytoshowtheurl&host=example.com
下面是我得到的JSON示例:

"lat_lngs": [[25, -80, 9], [26, -80, 6], [27, -80, 1], [29, -98, 2], [29, -95, 7], [30, -97, 3], [33, -117, 6], [33, -112, 25], [33, -111, 33], [34, -112, 1], [34, -111, 1], [36, -109, 1], [38, -97, 2], [40, -73, 1], [42, -78, 2]]
我试图使用jQuery获取每个lat_lng并运行一个函数

这是我目前的代码,但它不起作用

function addMarker(latitude, longitude) {
    marker = new google.maps.Marker({
        position: new google.maps.LatLng(latitude, longitude),
        map: map
    });
}

$.get('http://api.chartbeat.com/live/geo/v3/?apikey=fakekeytoshowtheurl&host=example.com', function(data) {
    $.each(data['lat_lngs'], function() {
        var latlng = data['lat_lngs'].split(',');
        addMarker(latlng[0], latlng[1]);
    })
});
这不起作用,我得到一个错误,说Object[Object array]没有“split”方法,并且无论我做了什么尝试,我都无法让任何东西起作用。我只想从列出的每个lat_lng中获取前两个数字,然后运行addMarker函数(lat,long)

有人有想法吗

$.each(data['lat_lngs'], function(index, value) {
    addMarker(value[0], value[1]);
})
说明:
data['lat_lngs']
是一个数组数组。当您使用
$对其进行迭代时。每次
,每次迭代都将作为其
接收
数据['lat_lngs']
数组的一个元素

每个元素本身就是一个数组。(不是字符串!无需
split()
任何操作。)

$。每个
还将
值设置为等于当前迭代的值。所以你也可以这样做:

$.each(data['lat_lngs'], function() {
    addMarker(this[0], this[1]);
})

你为什么要用,还是分开吧?你的代码没有多大意义。您仍然在使用each中的
数据
,而不是迭代的数据中的每个条目。问题是每个lat_lngs都是它自己的实体,因此,例如,我提醒lat_lngs[0]只是为了看看我会得到什么,我得到了第一整组数字。对。但是,.split用于将字符串拆分为数组<代码>数据['lat_lngs']已经是一个数组了。好吧,那么,我该如何获取第一个值呢?我对jquery还是新手,我对PHP更为熟练:p这很有效!我必须记住,下一次我需要做这样的事情:)我会尽快把它标记为答案