问题描述
|
var markers3 = [];
for (var i = 0; i < 1964; i++) {
var dataPhoto = data8.weblandmarks8[i];
if(data8.weblandmarks8[i].ip2==data8.weblandmarks8[i+1].ip2 )
{
var k=i+2;
while(1)
{
if((data8.weblandmarks8[k].ip2) == (data8.weblandmarks8[i].ip2))
k++;
else break;
}
for (var j = i; j < k; j++)
{
var latLng = new google.maps.LatLng(data8.weblandmarks8[j].latitude,data8.weblandmarks8[j].longitude);
var marker = new google.maps.Marker({position: latLng,icon: webicon,title:data8.weblandmarks8[j].webaddress});
markers3.push(marker);
}
i=k-1;
}
}
谷歌地图应用程序
我在Firefox中收到以下错误
错误:data8.weblandmarks8 [k]未定义
源文件:file:///Applications/MAMP/htdocs/geo/js/myscript.js
线:140
我已经定义了K
,但是firefox为什么说用它访问的json数据是未定义的?
相同的数据可通过i
变量访问。
编辑:
我有一个要访问的json数据文件
它的工作
但错误仅与该特定行有关
解决方法
这首先需要进行一些基本的调试:对于
k
的哪个值会失败?如果您尝试直接解决该值会怎样?
我相当确定k
(等于i+2
)只是在某个时候到达列表的末尾-就目前而言,该代码需要存在1966个元素才能起作用。