Grav's themes encapsulate a great deal of functionality, in addition to appearance. I don't know that this is good or bad, but it's different that I think about a theme.
If you switch themes, I would not expect a switch in functionality, just appearance (font's, colors, layout, etc.). Since Grav expects Javascript to be part of the theme, that might easily move functionality with a change in themes. Form validation, for example, might be done in JavaScript. Image carousels, jQueryUI stuff, and more.
I'm not suggesting a change, just starting a conversation about the concept and how folks are implementing JavaScript-based functionality in their projects.