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
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ètreform
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
// 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