In particular, most compressors are picky about semicolons. If you use JavaScript's implicit line breaking, they'll break. This includes function definitions: there should be a semicolon after each function definition, something that most JavaScript programmers forget.
I find that using JSMin + GZip (on the webserver level) compresses just as well and tends to break fewer things.
I find that using JSMin + GZip (on the webserver level) compresses just as well and tends to break fewer things.