我有一个问题,这不是我以前使用过的东西。
这是代码段。
//Defined at top of file
var ships_array = [];
//Function later on
function refreshJSON(){
$.getJSON("scripts/getJSON.php", function(json){
if(json){
$.each(shiplist,function(i,item){
$.each(item,function(j,subitem){
var mmsi = subitem['mmsi'];
ships_array[mmsi].lat = subitem['lat'];
ships_array[mmsi].lon = subitem['lon'];
});
});
}
});
}
我得到的错误是
Ships_array [mmsi]未定义[中断
发生此错误] Ships_array [mmsi] .lat =
subitem ['lat'];
这是使用关联数组的正确方法吗?我已经看到了与此类似的示例,但是我在某处出错了!最后,我想要一个Google Maps标记数组!
最佳答案
您只需要首先在哈希键上初始化值
var mmsi = subitem['mmsi'];
ships_array[mmsi] = ships_array[mmsi] || {};
ships_array[mmsi].lat = subitem['lat'];
ships_array[mmsi].lon = subitem['lon'];
关于javascript - 关联Javascript数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5295915/