title: Weird JSON parsing behavior in js, "Unexpected token :"
body: <p>As demonstrated in <a href="http://jsfiddle.net/aAQa3/1/" rel="noreferrer">this jsfiddle</a>, if you have a JS file and you create a JSON object without using it, it behaves differently depending on whether the keys(members) are wrapped in quotes or not.</p>
  
  <p>valid code:<code>{ a: 1};</code><br>
  invalid code: <code>{ "a": 1 };</code></p>
  
  <p>What you will get is an error message (in Chrome, different for FF/IE, but still fails on syntax)</p>
  
  <blockquote>
    <p>Uncaught SyntaxError: Unexpected token :</p>
  </blockquote>
  
  <p>but if you use the object in some way, for example: <code>alert({ "a": 1 });</code> everything is OK again.</p>
  
  <p>Why does this happen?</p>