# The String normalize() method

> Learn how the JavaScript normalize() method returns a string converted to a Unicode normalization form like NFC, NFD, NFKC or NFKD, with NFC as the default.

Author: [Flavio Copes](https://flaviocopes.com/about/) | Published: 2019-02-24 | Topics: [JavaScript](https://flaviocopes.com/tags/js/) | Canonical: https://flaviocopes.com/javascript-string-normalize/

Unicode has four main *normalization forms*. Their codes are `NFC`, `NFD`, `NFKC`, `NFKD`. [Wikipedia has a good explanation of the topic](https://en.wikipedia.org/wiki/Unicode_equivalence).

The `normalize()` method returns the string normalized according to the form you specify, which you pass as parameter (`NFC` being the default if the parameter is not set).

I will reuse the MDN example because I'm sure there is a valid usage but I can't find another example:

```js
'\u1E9B\u0323'.normalize() //ẛ̣
'\u1E9B\u0323'.normalize('NFD') //ẛ̣
'\u1E9B\u0323'.normalize('NFKD') //ṩ
'\u1E9B\u0323'.normalize('NFKC') //ṩ
```
