javascript - how to convert unicode string to ascii

14,086

There is only a short list of characters that can be safely carried through in a path component of a URL.

unreserved  = ALPHA / DIGIT / "-" / "." / "_" / "~"

All the other characters will have to be either removed (if you're creating a "slug") or escaped.

Removal can be done with the regex /[^a-zA-Z0-9-._~]/.

Escaping can be done with encodeURIComponent().

If you wish to achieve an equivalent of ICONV transliteration (that is, turning é into e and into EUR), you'll have to do your own, although you can leverage existing solutions and perhaps transform a transliteration table to JS format.

Share:
14,086
complez
Author by

complez

Updated on June 04, 2022

Comments

  • complez
    complez almost 2 years

    How to convert unicode string to ascii to make a nice string for a friendly url?