Kevin Smith (2014-12-13T04:53:43.000Z)
>
> function Foo() {}
> Foo.bar = 1;
> Foo.prototype.baz = 2;
>
> Is it possible to allow this in es6 with the class syntax? Or it belongs
> to es7? Or it’s simply a terrible idea?
>

Data properties on the instance prototype are generally considered to be a
footgun.  If you want to expose a data-like property on the constructor (or
the instance prototype), you can use accessors:

    let _bar = 1;
    class Foo {
        static get bar() { return _bar; }
        static set bar(value) { _bar = value; }
    }
    Foo.bar = 43;
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20141212/04fefd3a/attachment.html>
d at domenic.me (2014-12-19T22:48:06.085Z)
Data properties on the instance prototype are generally considered to be a
footgun.  If you want to expose a data-like property on the constructor (or
the instance prototype), you can use accessors:

    let _bar = 1;
    class Foo {
        static get bar() { return _bar; }
        static set bar(value) { _bar = value; }
    }
    Foo.bar = 43;