title: Why is "this" in an anonymous function undefined when using strict?
body: <p>Why is <strong>this</strong> in an anonymous function undefined when using javascript in strict mode? I understand why this could make sense, but I couldn't find any concrete answer.</p>
  
  <p>Example:</p>
  
  <pre><code>(function () {
      "use strict";
  
      this.foo = "bar"; // *this* is undefined, why?
  }());
  </code></pre>
  
  <p>Test in a fiddle: <a href="http://jsfiddle.net/Pyr5g/1/" rel="noreferrer">http://jsfiddle.net/Pyr5g/1/</a>
  Check out the logger (firebug).</p>