title: Why is "this" in JavaScript said to be an implicit parameter?
body: <p>I wonder why in the book <a href="https://rads.stackoverflow.com/amzn/click/com/193398869X" rel="nofollow noreferrer" rel="nofollow noreferrer">Secrets of the JavaScript Ninja by John Resig</a>, p. 48, it is said that:</p>
  
  <blockquote>
    <p>Whenever a function is invoked, ... an implicit parameter named <code>this</code>
    is also passed to the function.</p>
  </blockquote>
  
  <p>I was a little puzzled because previously, I read that <code>this</code> is actually a keyword.  And maybe it doesn't really matter, except if we try</p>
  
  <pre><code>function f() {
      this = {};
  }
  
  f();
  </code></pre>
  
  <p>then either Chrome or Node.js will raise an error that it is a invalid left side in assignment.  So if <code>this</code> is actually an implicit parameter, then that line shouldn't raise an error?  So I wonder is it true that the book has this mistake about <code>this</code> and it should be otherwise?</p>
  
  <p>(<strong>Update:</strong> I also re-checked JavaScript: the Definitive Guide 6th Edition and ECMA-262 and both of them say <code>this</code> is a keyword)...</p>