Javascript 如何使用循环将尚未显示的图层添加到地图中?
我是javascript新手,如果这是一个超级基本的问题,我深表歉意 因此,我有一个resetMap功能,它使用循环从地图中删除图层,如下所示: 函数resetMap(){ 现在我正试图使用一个类似的循环添加一个addAllLayers函数。问题是,我不太理解resetMap循环的实际功能 我可以看到它在数组中循环,如果它有每个层,它会删除它。但是“for(let layer of layers){”位实际上是什么意思?我如何编写一个类似的循环来添加层 到目前为止,我有: 函数showAllLayers(){ 但它似乎并不正确,因为它只会在该层之前已添加到地图的情况下添加该层 有人能解释一下吗Javascript 如何使用循环将尚未显示的图层添加到地图中?,javascript,arrays,loops,layer,Javascript,Arrays,Loops,Layer,我是javascript新手,如果这是一个超级基本的问题,我深表歉意 因此,我有一个resetMap功能,它使用循环从地图中删除图层,如下所示: 函数resetMap(){ 现在我正试图使用一个类似的循环添加一个addAllLayers函数。问题是,我不太理解resetMap循环的实际功能 我可以看到它在数组中循环,如果它有每个层,它会删除它。但是“for(let layer of layers){”位实际上是什么意思?我如何编写一个类似的循环来添加层 到目前为止,我有: 函数showAllLa
非常感谢!取出
if(layer)
复选框,只需执行map.addLayer(layer)
而不进行检查,然后查看结果。我在web控制台中收到一个错误,上面写着“t未定义”那么,不幸的是,这意味着我没有足够的信息来帮助你,因为我不知道这些层是如何创建的。:-(无论如何,谢谢。你能告诉我“for(let layer of layers)”是什么吗意思是?我不知道发生了什么我甚至不明白我的代码在做什么…这是一个for…of循环。它只是在数组中循环
let layers = [Frog1Layer, Frog2Layer, Frog3Layer, Frog4Layer, Frog5Layer, Frog6Layer, Frog7Layer, Frog8Layer,
Frog1Marker, Frog2Marker, Frog3Marker, Frog4Marker, Frog5Marker, Frog6Marker, Frog7Marker, Frog8Marker]
for (let layer of layers) {
if (layer) {
map.removeLayer(layer)
}
}
let layers = ([Frog1Layer, Frog2Layer, Frog3Layer, Frog4Layer, Frog5Layer, Frog6Layer, Frog7Layer, Frog8Layer,
Frog1Marker, Frog2Marker, Frog3Marker, Frog4Marker, Frog5Marker, Frog6Marker, Frog7Marker, Frog8Marker]);
for (let layer of layers) {
if (layer) {
map.addLayer(layer)
}
}