js遍历数组的有两种方式
var array=['a']
//标准的for循环
for(var i=1;i<array.length;i++){
alert(array[i])
}
//foreach循环
for(var i in array){
alert(array[i])
}
正常情况下上面两种遍历数组的方式结果一样
首先说两者的第一个区别
标准的for循环中的i是number类型 表示的是数组的下标
但是foreach循环中的i表示的是数组的key是string类型
第二个区别也是我在项目中遇到的问题
报错代码
for(var k in spaceLines){
var lines = spaceLines[k];
if(lines){
for(var l in lines){
lines[l].setMap(null);
}
}
}
在部分安卓机除chrome浏览器外运行错误
正确代码
for(var k in spaceLines){
var lines = spaceLines[k];
if(lines){
for(var l=0;l<lines.length;l++){
lines[l].setMap(null);
}
}
}