62,046
社区成员
发帖
与我相关
我的任务
分享
var data = datas[0];
var goodslist = datas[1];
var Dynamiclist = datas[2];
//alert("调试监测——01\r\nmarkerlist.length="+markerlist.length);
//以下处理在线信息
//本次循环主要是根据传递过来的数据,对markerlist进行过滤,如果新数据里不存在的则从markerlist里删除,否则继续留着,则从新数据里删除。
//望地图里添加各个标记
for (var i = 0; i < markerlist.length; i++) {
var index = -1;
for (var j = 0; j < data.length; j++) {
if (data[j] != undefined) {
if (markerlist[i].StatOnline.HId == data[j].HId) {
if (markerlist[i].StatOnline.CID != data[j].CID)
index = -1;
else
index = j;
break;
}
}
}
if (index != -1)
delete data[index];
else {
map.removeOverlay(markerlist[i].marker); //先从地图上移除对应得标记。
markerlist.splice(i, 1); //从数组中移除一个元素
i--;
}
}
//本次循环对剩余的新数据,添加到markerlist里和地图里。
var newdata;
for (var i = 0; i < data.length; i++) {
//alert('监测——02')
if (data[i] != undefined) {
var sondata = data[i];
var o = new Object();
o.StatOnline = sondata;
var info = comminfo(sondata);
o.marker = createMarker(sondata.Lng, sondata.Lat, info, (sondata.CID > -1) ? true : false, sondata.UP);
markerlist.splice(0, 0, o);
map.addOverlay(o.marker);
//以下比较哪个是最新的
if (newdata) {
if (newdata.StatOnline.ST < o.StatOnline.ST)
newdata = o;
}
else
newdata = o;
}
}