Honestly,
```js
const ADD_ALL_THE_STUFF = "ADD_ALL_THE_STUFF";
```
doesn't seem like a intended approach anyway, even if there was a
shorter syntax. `Symbol()` seems to be the better choice if the
objective is to manage references whose values indicates special
semantics; I have yet to see a use case where a string turns out to be
beneficial. Semantically, what should
```js
typeof (enum {
APPLE,
ORANGE,
GRAPE
}).APPLE;
```
evaluate to? A `"symbol"` called with its identifier, an
identifier-valued `"string"`, an integer-valued `"number"`?
On 16.12.2015 00:00, Jordan Harband wrote:
Correct, when `const foo;` throws, my concern doesn't exist. The
concern I was talking about is if this initial suggestion went
through, and `const foo;` would become `const foo = 'foo';`, that a
new refactoring hazard would be created - which is the entire reason
`const foo;` throws as-is.
Agreed that an `enum` construct would be very useful.
On Tue, Dec 15, 2015 at 11:56 AM, Andrea Giammarchi
<[email protected] <mailto:[email protected]>> wrote:
Jordan AFAIK you can't have undefined const declaration so your
concern is unfounded.
However, I'm pretty sure what Brendan says **is** indeed what
developers want so I'd +1 that without problems.
Regards
On Tue, Dec 15, 2015 at 4:44 PM, Jordan Harband <[email protected]
<mailto:[email protected]>> wrote:
That seems hazardous - if someone is converting a "var"
codebase to "const" and "let", and they convert `var foo;` to
`const foo;` expecting it to be undefined, the current TDZ
error will be much more helpful to them than a silent change
of meaning in their code to `const foo = 'foo';`.
On Tue, Dec 15, 2015 at 8:35 AM, Kip Obenauf
<[email protected] <mailto:[email protected]>> wrote:
A common pattern I see is this:
const ADD_ALL_THE_STUFF = 'ADD_ALL_THE_STUFF'
Would it be helpful to allow a shorter version of this to be:
const ADD_ALL_THE_STUFF
Rather than have that just be forever undefined, it could
automatically refer to a string of the same name, i.e.
'ADD_ALL_THE_STUFF'.
_______________________________________________
es-discuss mailing list
[email protected] <mailto:[email protected]>
https://mail.mozilla.org/listinfo/es-discuss
_______________________________________________
es-discuss mailing list
[email protected] <mailto:[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