title: Why does !new Boolean(false) equals false in JavaScript?
body: <p>From <a href="http://api.jquery.com/Types/#Boolean_Default" rel="noreferrer">the jQuery documentation</a> on JavaScript types comes this snippet of code describing the behavior of strings when converted to booleans (that topic is not related to this question, but it's just where I found the code):</p>
  
  <pre><code>!"" // true
  !"hello" // false
  !"true" // false
  !new Boolean(false) // false
  </code></pre>
  
  <p>I get the first three examples, but I don't get the last example, because: </p>
  
  <pre><code>new Boolean(false) == false //true
  !false // true
  </code></pre>
  
  <p>So I would assume:</p>
  
  <pre><code>!new Boolean(false) // true
  </code></pre>
  
  <p>But instead:</p>
  
  <pre><code>!new Boolean(false) // false, mind = blown
  </code></pre>
  
  <p>What is this I don't even...</p>
  
  <p>Is it because:</p>
  
  <pre><code>new Boolean(false) === false // false
  </code></pre>
  
  <p>If so, what purpose does this serve?</p>