11.2 Left-Hand-Side Expressions

2010-05-15

Anything left of the assignment operator (=), as well as any expression that has no assignment operator is considered a left hand side expression.

MemberExpression :
PrimaryExpression
FunctionExpression
MemberExpression [ Expression ]
MemberExpression . IdentifierName
new MemberExpression Arguments

NewExpression :
MemberExpression
new NewExpression

CallExpression :
MemberExpression Arguments
CallExpression Arguments
CallExpression [ Expression ]
CallExpression . IdentifierName

Arguments :
( )
( ArgumentList )

ArgumentList :
AssignmentExpression
ArgumentList , AssignmentExpression

LeftHandSideExpression :
NewExpression
CallExpression

Interesting to note is that any property access is a CallExpression (but not actually a call... except perhaps to a getter :)). The exact evaluation is explained in the following paragraphs.