JS: Allowed Characters in Identifier

By Xah Lee. Date: . Last updated: .

What is allowed characters in JavaScript identifiers?

JavaScript identifiers (variable/function names) must:

ECMAScript 2015 §ECMAScript Language: Lexical Grammar#sec-names-and-keywords

Here's a example you can test:

// α GREEK SMALL LETTER ALPHA codepoint 945, x3b1
const α = 4;
// ok
// ♥ BLACK HEART SUIT codepoint 9829, hex 2665
// is not a letter
const ♥ = 3;
// SyntaxError: Invalid or unexpected token

(To search for Unicode, or find a character's code point, see: Unicode Characters ∑ ♥ 😄.)

What characters are Unicode Letter?

A “Unicode Letter” is a character whose Unicode property “general category”'s major value is “L”. In general, language's alphabets are Unicode letters, and Chinese characters are also Unicode Letter.

Examples of characters that's not Unicode letter: digits, punctuations, math symbols, emoji.

How to determine if a character is a Unicode Letter?

You can find out whether a Unicode char is a letter using Python. See: Python: Get Unicode Name, Codepoint

Or in emacs, place cursor on (or before) the char, then M-x “describe-char”, then read the line “general-category”. [see Emacs: Unicode Tutorial]

Case Sensitivity of HTML5, XML, CSS, JavaScript

Case Sensitivity of HTML5, XML, CSS, JavaScript

String Topic

  1. JS: String Overview
  2. JS: Template String
  3. JS: String Escape Sequence
  4. JS: Unicode Escape Sequence
  5. JS: String Object
  6. JS: String.prototype
  7. JS: String to Number
  8. JS: Encode URL, Escape String
  9. JS: Format Number
  10. JS: JSON
  11. JS: Source Code Encoding
  12. JS: Allowed Characters in Identifier
Liket it? Put $5 at patreon.

Or, Buy JavaScript in Depth

If you have a question, put $5 at patreon and message me.

Web Dev Tutorials

  1. HTML
  2. Visual CSS
  3. JS Basics
  4. JS in Depth
  5. JS Reference
  6. DOM
  7. SVG
  8. JS Misc