La documentación de Audio() establece que el mecanismo de recolección de basura no eliminará sus objetos de la memoria si la reproducción está actualmente en curso.
Por supuesto, lo mismo no puede ser cierto para los objetos Image() ya que no hay reproducción.
Pero dado que ambos representan etiquetas, me preguntaba si existen condiciones específicas para la recolección de elementos no utilizados de objetos de imagen.
Dibujar una imagen en un elemento de lienzo podría ser un ejemplo del mundo real para esto:
function someFunc(url) { let canvas1 = document.getElementById("canvas1"); let ctx1 = canvas1.getContext('2d'); // Is this image preserved after the callback was invoked? let img = new Image(); img.addEventListener('load', function() { ctx1.drawImage(img, 0, 0); }, {once: true}); img.src = url; }