SHORTHAND PROPERTY IMPROVEMENTS
Ron Buckton – Microsoft Corporation
PROPOSAL
// object initializer, dot-notation
const a = { o.x };
// object initializer, bracket-notation
const a = { o["x"] };
�// destructuring, dot-notation
({ a.x } = o);
// destructuring, bracket-notation
({ a["x"] } = o);
SEMANTICS
GRAMMAR
PropertyDefinition[Yield, Await] :
MemberExpression[?Yield, ?Await] . IdentifierName
MemberExpression[?Yield, ?Await] [ Expression ]
CallExpression[?Yield, ?Await] . IdentifierName
CallExpression[?Yield, ?Await] [ Expression ]
AssignmentProperty[Yield, Await] :
MemberExpression[?Yield, ?Await] . IdentifierName Initializer[+In, ?Yield, ?Await]opt
MemberExpression[?Yield, ?Await] [ Expression ] Initializer[+In, ?Yield, ?Await]opt
CallExpression[?Yield, ?Await] . IdentifierName Initializer[+In, ?Yield, ?Await]opt
CallExpression[?Yield, ?Await] [ Expression ] Initializer[+In, ?Yield, ?Await]opt
STATUS