What do you think about a C# 6 like nameof() expression for

Stas Berkov stas.berkov at gmail.com
Fri Jun 14 13:05:19 UTC 2019

Can we revisit this issue?

In C# there is `nameof`, in Swift you can do the same by calling


let keyPath = \Person.mother.firstName

NSPredicate(format: "%K == %@", keyPath, "Andrew")


Let's introduce `nameof` in ES, please.

Devs from TypeScript don't want to introduce this feature in TypeScript
unless it is available in ES (
https://github.com/microsoft/TypeScript/issues/1579 )

This feature is eagarly being asked by TypeScript community.

I understand there are couple issues related to `nameof` feature in ES.
They are: minification and what to do if user already has `nameof` function.


1. If your code to be minimized be prepared that variable names will also

2. (just a possibility) Minimizer can have option to replace
`nameof(someVar)` with result of `nameof` function.

What if user already has `nameof` function.

1. To maintain status quo we can user `nameof` function having priority
over newly introduced language feature.

2. OR we can use `typeof` syntax, e.g. `nameof msg.userName` (// returns
"userName" string)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20190614/712ddfda/attachment.html>

More information about the es-discuss mailing list