@jrm # is not necessarily garbage, but to make an application out of it, one often needs heaping gobs of it (which means slow-loading pages, high memory use by the browser). Also, each browser implements JS slightly differently (none completely follow # standard), so additional gobs of JS used to try to compensate.