We don't destroy the olLayer explicitely, but the GC will do it once it is removed from the map. By having this JavaScript scope, the GC is not allowed to destroy it anymore. Adding and removing the same layer 500 times will result in having 500 objects the GC can't clean up. (Note that adding a layer will create a new olLayer object and does not re-use the existing one

In practice, this might not happen at all, but it's still good practice to avoid even such minimal memory leaks.

We could have a global `$rootScope.$on('gaLayersChange'` in which we loop through the map.getLayers() array to adapt the label. I think that performance wise, this would be about the same.