Юникод имеет четыре основные формы нормализации. Их коды – NFC, NFD, NFKC, NFKD. В Википедии есть хорошее объяснение этой темы.
Метод normalize() возвращает строку, нормализованную в соответствии с указанной вами формой, которую вы передаете в качестве параметра (NFC является значением по умолчанию, если параметр не задан).
Я повторю пример из MDN, потому что уверен, что там есть правильное использование, но не могу найти другого примера:
'\u1E9B\u0323'.normalize() //ẛ̣
'\u1E9B\u0323'.normalize('NFD') //ẛ̣
'\u1E9B\u0323'.normalize('NFKD') //ṩ
'\u1E9B\u0323'.normalize('NFKC') //ṩОригинал: “https://flaviocopes.com/javascript-string-normalize/”