I've just discovered that when the remove() function is used, the matched elements are not removed from the jQuery object, just the DOM.
According to the remove() documentation:
Removes all matched elements from the DOM. This does NOT remove them from the jQuery object, allowing you to use the matched elements further.
Surely if a web app keeps on adding and removing elements from the dom, this will keep using up more and more memory? Can someone confirm if this is the case? What can be done to avoid this?