Get to know MDN better
Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
La méthode statique String.fromCharCode() renvoie une chaîne de caractères créée à partir de points de code UTF-16.
Une séquence de nombres représentant des points de code UTF-16 entre 0 et 65535 (0xFFFF). Les nombres supérieurs à 0xFFFF sont tronqués.
Une chaîne de caractères qui contient les caractères correspondants à la série de points de code UTF-16.
Cette méthode renvoie une chaîne de caractère et non un objet String.
La méthode fromCharCode() étant une méthode statique de l'objet String, elle doit toujours être utilisée avec la syntaxe String.fromCharCode() plutôt qu'en appelant la méthode à partir d'un objet String construit sur mesure.
Pour les caractères du plan multilingue de base, UTF-16 utilise une seule unité de code :
Les caractères hors de ce plan utilisent deux unités de code (on parle de surrogate pair) :
En UTF-16, les caractères les plus communs sont représentables sur une seule valeur de 16 bits. Toutefois, cet ensemble de caractères (aussi appelé plan multilingue de base ou BMP en anglais) ne représente qu'1/17e de l'espace total représenté par les caractères Unicode. Le reste des points de code, sur l'intervalle 65536 (0x010000) à 1114111 (0x10FFFF) sont des caractères additionnels qui sont représentés par deux valeurs sur 16 bits qu'on appelle surrogate pairs en anglais.
La méthode fromCharCode() ne fonctionne qu'avec des valeurs sur 16 bits et il faudra donc fournir une paire de codets pour obtenir certains caractères. Ainsi, String.fromCharCode(0xD83C, 0xDF03) renvoie le point de code U+1F303 qui représente l'émoji « nuit étoilée ».
Bien qu'il y ait une relation mathématique entre la valeur composée et les deux codets qui forment la paire, on a besoin d'une étape supplémentaire à chaque fois. Aussi, il sera plus pratique d'utiliser String.fromCodePoint() (ES2015 / ES6) qui permet de manipuler les codes des caractères hors BMP : on pourra ainsi écrire String.fromCodePoint(0x1F303) pour renvoyer le caractère U+1F303 (émoji « nuit étoilée »).
| ECMAScript® 2027 Language Specification # sec-string.fromcharcode |
Activez JavaScript pour afficher ce tableau de compatibilité des navigateurs.
Cette page a été modifiée le 17 févr. 2025 par les contributeur·ice·s du MDN.
Votre modèle pour un internet meilleur.
Visitez la société mère à but non lucratif de Mozilla Corporation, la Fondation Mozilla.
Certaines parties de ce contenu sont protégées par le droit d'auteur ©1998—2026 des contributeurs individuels de mozilla.org. Contenu disponible sous une licence Creative Commons.