`obj.foo() {}` is a syntax error in Chrome, so it seems possible to
make that a function definition.
/#!/JoePeaOn Tue, Oct 24, 2017 at 12:45 PM, Brian Blakely <[email protected]> wrote: > Is it only valid with a semicolon after `foo()`, though? Pragma without > semicolon throws in three engines. > > On Tue, Oct 24, 2017 at 2:41 PM, James Kyle <[email protected]> wrote: >> >> To parse it that way would be changing behavior. >> >> obj.foo() {} >> this.bar() {} >> >> Are both call expressions followed by a block. They are valid syntaxes >> today. >> >> Think: >> >> obj.foo(); >> { >> let a = 1; >> } >> >> >> On Wed, 25 Oct 2017 at 4:29 am, Brian Blakely <[email protected]> >> wrote: >>> >>> Extend the method shorthand syntax beyond initial object declaration. >>> >>> ```js >>> const obj = {}; >>> >>> obj.foo() {...} >>> ``` >>> >>> Equivalent 2015 syntax: >>> >>> ```js >>> const obj = { >>> foo() {...} >>> }; >>> ``` >>> >>> This is nice for assignment to context: >>> >>> ```js >>> function Foo() { >>> this.bar() {...} >>> this.baz() {...} >>> } >>> >>> const foo = new Foo(); >>> foo.bar(); >>> foo.baz(); >>> ``` >>> >>> Equivalent 2015 syntax: >>> >>> ```js >>> function Foo() { >>> this.bar = function() {...}; >>> this.baz = function() {...}; >>> } >>> ``` >>> _______________________________________________ >>> es-discuss mailing list >>> [email protected] >>> https://mail.mozilla.org/listinfo/es-discuss > > > > _______________________________________________ > es-discuss mailing list > [email protected] > https://mail.mozilla.org/listinfo/es-discuss > _______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

