Can I Unicode‽

Unicode support across JavaScript engines

Changes in the Unicode Standard can affect the JavaScript language. A snippet of JavaScript code can go from being syntactically invalid to being valid overnight, when a new version of the Unicode Standard gets released. 🤯 This page gives concrete examples and tracks which exact Unicode version each browser supports for each feature.

The latest available Unicode version is v16.0.0. Your current browser supports Unicode v??? for JavaScript identifiers, and Unicode v??? for property escapes in regular expressions.

Identifiers

The JavaScript identifier grammar determines (among other things) which Unicode symbols can be used within variable names. Every new version of the Unicode Standard potentially changes the set of ID_Start and ID_Continue symbols, thereby changing what’s valid in JavaScript identifiers.

// Valid since the release of Unicode v11.0.0:
const= 42;

RegExp Unicode property escapes

JavaScript regular expressions with the u (Unicode) flag support Unicode property escape syntax of the form \p{Script=Greek}. Every new version of the Unicode Standard potentially introduces new properties, thereby changing what’s valid in JavaScript regular expression patterns.

// Valid since the release of Unicode v16.0.0:
const re = /\p{Script=Garay}/u;