Yay!
Oh wait...
really?  You have to use an expression syntax to define a class data
member?   instead of the existing obhect field definition?

class xyz {
    x = 0;
    y = 0;
    add() { }
    /* Oh I see; there's no punctuation between class methods */
    sub() { }
}


rather than

class xyz {
    x:0,
    y: 0
    add() {} /* , optional? */
    sub() {}
}

I'm sure there's method to what I now consider madness...  out

On Wed, Feb 20, 2019 at 5:14 PM Adam Klein <ad...@chromium.org> wrote:

> LGTM!!
>
> On Wed, Feb 20, 2019 at 12:20 PM 'Mathias Bynens' via blink-dev <
> blink-...@chromium.org> wrote:
>
>> LGTM
>>
>> On Wed, Feb 20, 2019 at 8:58 PM Sathya Gunasekaran <gsat...@chromium.org>
>> wrote:
>>
>>> Contact Emails
>>>
>>> gsat...@chromium.org
>>>
>>>
>>> Spec
>>>
>>> https://github.com/tc39/proposal-class-fields
>>>
>>>
>>> Summary (taken from our WebFu article
>>> <https://developers.google.com/web/updates/2018/12/class-fields>)
>>>
>>>
>>>
>>> This private fields proposal provides encapsulation: If you're using an
>>> instance of a class, you cannot reference that class's private fields from
>>> outside the class body. You can only reference private fields from within
>>> the class that defines them.
>>>
>>>
>>> The new private fields syntax is similar to public fields, except you
>>> mark the field as being private by using #
>>> <https://github.com/tc39/proposal-class-fields/blob/master/PRIVATE_SYNTAX_FAQ.md>.
>>> You can think of the # as being part of the field name:
>>>
>>>
>>> class IncreasingCounter {
>>>
>>>  #count = 0;
>>>
>>>  get value() {
>>>
>>>    console.log('Getting the current value!');
>>>
>>>    return this.#count;
>>>
>>>  }
>>>
>>>  increment() {
>>>
>>>    this.#count++;
>>>
>>>  }
>>>
>>> }
>>>
>>>
>>> Private fields are not accessible outside of the class body:
>>>
>>>
>>> const counter = new IncreasingCounter();
>>>
>>> counter.#count;
>>>
>>> // → SyntaxError
>>>
>>> counter.#count = 42;
>>>
>>> // → SyntaxError
>>>
>>>
>>> This intent to ship includes private static fields as well:
>>>
>>>
>>> class ClassCounter {
>>>
>>>  static #count = 0;
>>>
>>>  static increment() {
>>>
>>>    this.#count++;
>>>
>>>  }
>>>
>>> }
>>>
>>> ClassCounter.#count;
>>>
>>> // → SyntaxError
>>>
>>> ClassCounter.increment();
>>>
>>>
>>>
>>> Interoperability and compatibility risk
>>>
>>> This stage 3 proposal introduces new syntax that was previously a
>>> SyntaxError. There’s very low web compat risk.
>>>
>>>
>>> Firefox: In development
>>> <https://bugzilla.mozilla.org/show_bug.cgi?id=1499448>
>>>
>>> Safari: In development <https://bugs.webkit.org/show_bug.cgi?id=174212>
>>>
>>> Edge: No signals
>>>
>>>
>>> Is this feature fully tested?
>>>
>>>
>>>
>>> Yes, this feature passes V8’s own mjsunit/cctest tests as well as all
>>> the Test262 tests.
>>>
>>>
>>> Tracking bug
>>>
>>> v8:5368 <http://bugs.chromium.org/p/v8/issues/detail?id=5368>
>>>
>>>
>>>
>>> Link to entry on the Chrome Platform Status dashboard
>>>
>>> https://www.chromestatus.com/feature/6035156464828416
>>>
>>>
>>>
>>> Requesting approval to ship?
>>>
>>> Yes. Note that since this is a V8/JS feature, this post is just an FYI
>>> to blink-dev — no sign off from Blink API owners is required.
>>>
>>>
>>>
>>> --
>>> --
>>> v8-dev mailing list
>>> v8-...@googlegroups.com
>>> http://groups.google.com/group/v8-dev
>>> ---
>>> You received this message because you are subscribed to the Google
>>> Groups "v8-dev" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to v8-dev+unsubscr...@googlegroups.com.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "blink-dev" group.
>> To view this discussion on the web visit
>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CADizRgaQiv2%3DmEtPOcprwkGg_KcxCfF7A%3DpPp6q-kCW%3DGN2Mtw%40mail.gmail.com
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CADizRgaQiv2%3DmEtPOcprwkGg_KcxCfF7A%3DpPp6q-kCW%3DGN2Mtw%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
> --
> --
> v8-users mailing list
> v8-users@googlegroups.com
> http://groups.google.com/group/v8-users
> ---
> You received this message because you are subscribed to the Google Groups
> "v8-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to v8-users+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
-- 
v8-users mailing list
v8-users@googlegroups.com
http://groups.google.com/group/v8-users
--- 
You received this message because you are subscribed to the Google Groups 
"v8-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to v8-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to