String.prototype.normalize()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2016.

La méthode normalize() permet de renvoyer la forme normalisée Unicode d'une chaîne de caractères.

Exemple interactif

Syntaxe

js
str.normalize([form]);

Paramètres

form

Paramètre optionnel. Une chaîne parmi "NFC", "NFD", "NFKC", ou "NFKD", définissant la forme de normalisation Unicode à utiliser. Si le paramètre n'est pas précisé ou vaut undefined, la valeur par défaut utilisée sera "NFC".

  • NFC - Normalization Form Canonical Composition.
  • NFD - Normalization Form Canonical Decomposition.
  • NFKC - Normalization Form Compatibility Composition.
  • NFKD - Normalization Form Compatibility Decomposition.

Valeur de retour

Une chaîne de caractères qui est le forme Unicode normalisée de la chaîne appelante.

Exceptions

RangeError

Une exception RangeError est envoyée si le paramètre form n'est pas une des valeurs définies ci-avant.

Description

La méthode normalize() renvoie la forme normalisée Unicode de la chaîne de caractères. Elle n'affecte pas la valeur de la chaîne.

Exemples

js
// Chaîne initiale

// U+1E9B: LATIN SMALL LETTER LONG S WITH DOT ABOVE
// U+0323: COMBINING DOT BELOW
var str = "\u1E9B\u0323";

// Forme canonique composée (Canonically-composed form) (NFC)

// U+1E9B: LATIN SMALL LETTER LONG S WITH DOT ABOVE
// U+0323: COMBINING DOT BELOW
str.normalize("NFC"); // "\u1E9B\u0323"
str.normalize(); // la même chaîne que précédemment

// Forme canonique décomposée (Canonically-decomposed form) (NFD)

// U+017F: LATIN SMALL LETTER LONG S
// U+0323: COMBINING DOT BELOW
// U+0307: COMBINING DOT ABOVE
str.normalize("NFD"); // "\u017F\u0323\u0307"

// Forme composée compatible (NFKC)

// U+1E69: LATIN SMALL LETTER S WITH DOT BELOW AND DOT ABOVE
str.normalize("NFKC"); // "\u1E69"

// Forme décomposée compatible (NFKD)

// U+0073: LATIN SMALL LETTER S
// U+0323: COMBINING DOT BELOW
// U+0307: COMBINING DOT ABOVE
str.normalize("NFKD"); // "\u0073\u0323\u0307"

Spécifications

Specification
ECMAScript Language Specification
# sec-string.prototype.normalize

Compatibilité des navigateurs

BCD tables only load in the browser

Voir aussi