リーフレット/ Javascriptでレイヤーの「タイプ」を識別するための正しい(または推奨される)アプローチは何ですか?
私は正常に使用できlayer instanceof
ますが、これは、設計時にタイプを知っている場合にのみ機能します(通常はそうです)。
map.eachLayer(function(layer) {
console.log('_leaflet_id=' + layer._leaflet_id + ' is layer type= '+ getLayerTypeName(layer));
function getLayerTypeName(layer)
{
if (layer instanceof L.Marker){
return 'Marker';
}
else if (layer instanceof L.Tooltip){
return 'Tooltip';
}
else if (layer instanceof L.esri.DynamicMapLayer){
return 'DynamicMapLayer';
}
else if (layer instanceof L.esri.BasemapLayer){
return 'BasemapLayer';
}
else if (layer instanceof L.Layer){
return 'Layer';
}
else
{
return 'Unknown';
}
}
私が使用すべき別のアプローチはありますか?