¿Qué es una expresión válida del lado izquierdo en la gramática de JavaScript?
Ok todossaber cuáles son las expresiones válidas del lado izquierdo. Mas o menos.*
Pero, mirando la definición deel estándar ECMA-Script, Estoy muy confundido:
LeftHandSideExpression :
NewExpression
CallExpression
¿Es solo un error en la definición, o estoy haciendo algo mal aquí? Quiero decir, ¿no significa eso realmente que
new Object = 1; // NewExpression AssignmentOperator PrimaryExpression
function () { return foo; }() = 1;// CallExpression AssignmentOperator PrimaryExpression
se supone que son expresiones de asignación válidas?
* Desde mi humilde comprensión, esto tendría mucho más sentido:
LeftHandSideExpression :
Identifier
MemberExpression [ Expression ]
MemberExpression . IdentifierName
CallExpression [ Expression ]
CallExpression . IdentifierName