Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. JavaScript
  3. Référence JavaScript
  4. Objets natifs standards
  5. String
  6. String.fromCharCode()

Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in EnglishAlways switch to English

String.fromCharCode()

Baseline Widely available

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 statiqueString.fromCharCode() renvoie une chaîne de caractères créée à partir de points de code UTF-16.

Exemple interactif

console.log(String.fromCharCode(189, 43, 190, 61));// Expected output: "½+¾="

Syntaxe

js
String.fromCharCode(num1, ..., numN)

Paramètres

num1, ..., numN

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.

Valeur de retour

Une chaîne de caractères qui contient les caractères correspondants à la série de points de code UTF-16.

Description

Cette méthode renvoie une chaîne de caractère et non un objetString.

La méthodefromCharCode() étant une méthode statique de l'objetString, elle doit toujours être utilisée avec la syntaxeString.fromCharCode() plutôt qu'en appelant la méthode à partir d'un objetString construit sur mesure.

Exemples

Pour les caractères du plan multilingue de base, UTF-16 utilise une seule unité de code :

js
String.fromCharCode(65, 66, 67); // ABCString.fromCharCode(0x2014); // "—"String.fromCharCode(0x12014); // "—" également, le 1 a été tronquéString.fromCharCode(8212); // renvoie également "—" car 8212// est la forme décimale

Les caractères hors de ce plan utilisent deux unités de code (on parle desurrogate pair) :

js
String.fromCharCode(0xd83c, 0xdf03); // Point de code U+1F303 pour l'émoji nuit étoilée// Forme décimale équivalente :String.fromCharCode(55356, 57091);String.fromCharCode(0xd834, 0xdf06, 0x61, 0xd834, 0xdf07);// "\uD834\uDF06a\uD834\uDF07"

Utiliser des valeurs Unicode plus grandes

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 appellesurrogate pairs en anglais.

La méthodefromCharCode() 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'utiliserString.fromCodePoint() (ES2015 / ES6) qui permet de manipuler les codes des caractères hors BMP : on pourra ainsi écrireString.fromCodePoint(0x1F303) pour renvoyer le caractère U+1F303 (émoji « nuit étoilée »).

Spécifications

Specification
ECMAScript® 2026 Language Specification
# sec-string.fromcharcode

Compatibilité des navigateurs

Voir aussi

Help improve MDN

Learn how to contribute

Cette page a été modifiée le par lescontributeurs du MDN.


[8]ページ先頭

©2009-2025 Movatter.jp