2

In TypeScript, there is convenient syntax, constructor parameter properties:

constructor(a, public b, private _c) {}

Which is syntactic sugar for:

constructor(a, b, _c) {
  this.b = b;
  this._c = _c;
}

Considering that there are ECMAScript proposals for other features that previously were specific to TypeScript like class fields and their visibility, it would be reasonable to get parameter properties, too.

Are there proposals or other initiatives for constructor parameter properties in ECMAScript? Are there Babel transforms that support this or similar syntactic sugar?

I weren't able to find any but I assume that different terminology could be used for same functionality.

Estus Flask
  • 206,104
  • 70
  • 425
  • 565
  • I really wish there were, I miss that from coffeescript as well. – Jared Smith Aug 22 '18 at 01:10
  • 2
    @JaredSmith True, that's one of few reasons why I'd go with TS as a transpiler of choice (setting aside types). Just had an answer on related question, https://stackoverflow.com/a/51958460/3731501 and got curious. – Estus Flask Aug 22 '18 at 01:16

1 Answers1

2

Are there proposals or other initiatives for constructor parameter properties in ECMAScript?

No.

Are there Babel transforms that support this or similar syntactic sugar?

Use typescript transform with babel : https://babeljs.io/docs/en/next/babel-preset-typescript.html

OR

Just use typescript by itself as that provides the transform

basarat
  • 261,912
  • 58
  • 460
  • 511