title: Jasmine: Why toBeUndefined and not.toBeDefined?
body: <p>I'm just learning the Jasmine library, and I've noticed that Jasmine has a very limited number of built-in assertions.  I've also noticed that, despite having such a limited number, two of its assertions appear to be redundant: <code>toBeDefined</code>/<code>toBeUndefined</code>.</p>
  
  <p>In other words, both of these would seem to check for the same exact thing:</p>
  
  <pre><code>expect(1).toBeDefined();
  expect(undefined).not.toBeUndefined();
  </code></pre>
  
  <p>Is there some reason for this, like a case where <code>toBeDefined</code> isn't the same as <code>toBeUndefined</code>?  Or is this just the one assertion in Jasmine that has two perfectly equal ways of being invoked?</p>