What characters are valid for JavaScript variable names?

Viewed 351929

Which characters can be used for naming a JavaScript variable?

I want to create a small "extension library" for my non-JavaScript users here at work (who all seem to be squeamish when it comes to the language). I love how jQuery and Prototype have both use the $ dollar sign, and since I use jQuery, I'm looking for another nice single-character symbol to use.

I realize that I could just test out a number of characters, but I'm hoping to narrow down my list of characters to start with (in consideration of future integration with another popular library, perhaps).

12 Answers

Actually, ECMAScript says on page 15: That an identifier may start with a $, an underscore or a UnicodeLetter, and then it goes on (just below that) to specify that a UnicodeLetter can be any character from the Unicode categories, Lo, Ll, Lu, Lt, Lm and Nl. And when you look up those categories you will see that this opens up a lot more possibilities than just Latin letters. Just search for "Unicode categories" in Google and you can find them.

Wrote a glitch workspace that iterates over all the codepoints and emit the character if eval('var ' + String.fromCodePoint(#) + ' = 1') works.

It just keeps going, and going, and going....

Related