问题环境:百度地图的车辆监控,中想要删除特定的某一辆车,使用getOverlays()方法
for (var i = 0; i < allOverlay.length; i++){
if(allOverlay[i].getLabel().content == myCarPlateNumber){
map.removeOverlay(allOverlay[i]);
}
}
但是getOverlays()方法返回的数组对象的长度超过了监控的车辆对象的长度,而其中的某些对象没有相应的方法和属性导致
allOverlay[i].getLabel().content<span style="font-family: Arial, Helvetica, sans-serif;">== myCarPlateNumber</span>
这行代码报错
解决方案:
因为只想处理满足条件的情况,对不满足条件的overlay所导致的异常直接忽略
for (var i = 0; i < allOverlay.length; i++){
try{
if(allOverlay[i].getLabel().content == myCarPlateNumber){
map.removeOverlay(allOverlay[i]);
}
}catch(error){}
}