How/why does this javascript code print 'fun'?
<pre><code>alert(
    (![]+[])[[]-[]]+
    (([]+[])+([][[]]))[[]-[]]+
    (([]+[])+([][[]]))[!![]-[]]
);
</code></pre>

<p>Heres' the fiddle: <a href="http://jsfiddle.net/leeny/6VugZ/">http://jsfiddle.net/leeny/6VugZ/</a></p>

<p>How exactly is this cryptic piece of code working? </p>
