title: Is null a valid javascript property name?
body: <p>Javascript objects can be used as maps. The following all is valid code:</p>
  
  <pre><code>var x = {};
  x.a = 1;
  x['b'] = 2; // the same as x.b = 2;
  x[3] = 3; // x.3 won't work, but this syntax works fine. Also, x[3] == x['3'].
  x['What, this works too?!?!?'] = 'Yup, it does!';
  </code></pre>
  
  <p>But today I tested another case which... seems to work, but raises some warning flags in my head because it looks... wrong:</p>
  
  <pre><code>x[null] = 42;
  </code></pre>
  
  <p>Now, it would be extremely cool if this worked as expected (I won't have to rewrite a bunch of code then), but can I rely on it? Or maybe this is just some undocumented behavior which just <em>happens</em> to work in all modern browsers but might as well cease working on the next release of Google Chrome?</p>