Conflicting boolean values of an empty JavaScript array
<p>Can anyone explain why the following two statements both evaluate as <strong>true</strong>?</p>

<pre><code>[] == false
</code></pre>

<p>and</p>

<pre><code>!![]
</code></pre>

<p>This question is purely out of curiosity of why this happens and not about how to best test if an array is empty. </p>
