code: function parseConditionalExpression() {
          var expr, previousAllowIn, consequent, alternate, startToken;
  
          startToken = lookahead;
  
          expr = parseBinaryExpression();
  
          if (match('?')) {
              lex();
              previousAllowIn = state.allowIn;
              state.allowIn = true;
              consequent = parseAssignmentExpression();
              state.allowIn = previousAllowIn;
              expect(':');
              alternate = parseAssignmentExpression();
  
              expr = delegate.createConditionalExpression(expr, consequent, alternate);
              delegate.markEnd(expr, startToken);
          }
  
          return expr;
      }
docs: 11.12 Conditional Operator