code: function readKey ( parser ) {
    	var token;
  
    	if ( token = readStringLiteral( parser ) ) {
    		return identifier.test( token.v ) ? token.v : '"' + token.v.replace( /"/g, '\\"' ) + '"';
    	}
  
    	if ( token = readNumberLiteral$1( parser ) ) {
    		return token.v;
    	}
  
    	if ( token = parser.matchPattern( namePattern ) ) {
    		return token;
    	}
  
    	return null;
    }
docs: http://mathiasbynens.be/notes/javascript-properties can be any name, string literal, or number literal