Just a bunch of links to various js minifiers. Some are better than others, but it usually just depends every time.
If you're going for best compression I'd advice google closure and microsoft ajax minifier. In my js1k demo, the ajax minifier won, but it's very well possible (and probable) that it'll differ for larger projects. (I'm told even uglify can do better than google closure.
If, after that, you're still looking to win bytes, I suggest to look at the crush line of minifiers, which use some compression algorithm to pack and
to revive the script. Not pretty, but it does the job. In my experience, jscrush wins here, hands down.
Note: these are all web-based minifiers. Some use server requests, others do it all on the client. None use downloadable executables.
Identifier shortningYUI compressorpacker
(this is 3.1, 3.0
Smart compilersMicrosoft Ajax Minifier
(also has YUI)Google Closureuglify js
Eval compressionjscrushjs crunch
(bit of everything, powered by jslint)js parser with output
(blatant self plug ;)js coercion tool
Important ones missing? Ping me on twitter
Hope it helps you!