Я создаю элемент canvas следующим образом:
var canvas = document.createElement('canvas');
Я использую этот объект canvas
, чтобы получить контекст, и оттуда использую информацию из контекста для дальнейшей логики.
var context = canvas.getContext('2d');
...
// More logic
Я никогда не добавляю элемент canvas к документу или любому другому элементу, но, используя safari devtools -> вкладку Canvas, я вижу, что элементы canvas постоянно создаются при каждом запуске этого кода. Они имеют размер около 200 КБ каждый, и могут быть сотни, тысячи этих элементов холста, созданных за один сеанс. Если страница перезагружается, они удаляются из памяти и больше не отображаются на вкладке холста.
Однако, если страница не перезагружается и холст создается, вы можете увидеть снижение производительности.
Итак, как я могу удалить эти элементы холста из памяти, если они никогда не добавлялись на страницу?
См. Ниже изображение вкладки холста (работает только в Safari как более новые версииChrome и Firefox не поддерживают его). Ожидается первый объект canvas, остальные я бы хотел удалить. Я использую JavaScript и JQuery.
![enter image description here](https://i.stack.imgur.com/Liz6f.png)