--- title: String.fromCodePoint() slug: Web/JavaScript/Reference/Global_Objects/String/fromCodePoint tags: - ECMAScript 2015 - JavaScript - Méthode - Reference - String - polyfill translation_of: Web/JavaScript/Reference/Global_Objects/String/fromCodePoint original_slug: Web/JavaScript/Reference/Objets_globaux/String/fromCodePoint ---
{{JSRef}}

La méthode statique String.fromCodePoint() renvoie une chaîne de caractères créée à partir d'un suite de codets.

{{EmbedInteractiveExample("pages/js/string-fromcodepoint.html")}}

Syntaxe

String.fromCodePoint(num1[, ...[, numN]])

Paramètres

num1, ..., numN
Une séquence de codets (code points).

Valeur de retour

Une chaîne de caractères créée à partir de la séquence de codets indiquée.

Exceptions

Description

fromCodePoint() étant une méthode statique de {{jsxref("String")}}, elle doit toujours être utilisée avec la syntaxe String.fromCodePoint(), plutôt qu'avec une méthode d'un objet {{jsxref("String")}} qui aurait été créé.

Exemples

Utiliser fromCodePoint()

String.fromCodePoint(42);       // "*"
String.fromCodePoint(65, 90);   // "AZ"
String.fromCodePoint(0x404);    // "\u0404"
String.fromCodePoint(0x2F804);  // "\uD87E\uDC04"
String.fromCodePoint(194564);   // "\uD87E\uDC04"
String.fromCodePoint(0x1D306, 0x61, 0x1D307) // "\uD834\uDF06a\uD834\uDF07"

String.fromCodePoint('_');      // RangeError
String.fromCodePoint(Infinity); // RangeError
String.fromCodePoint(-1);       // RangeError
String.fromCodePoint(3.14);     // RangeError
String.fromCodePoint(3e-2);     // RangeError
String.fromCodePoint(NaN);      // RangeError

Comparaison avec fromCharCode()

La méthode {{jsxref("String.fromCharCode()")}} ne peut pas renvoyer les caractères de l'intervalle 0x010000 à 0X10FFFF avec un seul codet, il est nécessaire de lui fournir la paire décomposée (surrogate pair) pour obtenr un tel caractère :

String.fromCharCode(0xD83C, 0xDF03); // émoji « nuit étoilée »
String.fromCharCode(55356, 57091);   // équivalent en notation décimale

String.fromCodePoint(), en revanche, peut renvoyer les caractères qui s'expriment sur plus d'un codet de 16 bits grâce à leur codet « simple » :

String.fromCodePoint(0x1F303); // ou 127747 en notation décimale

Spécifications

Spécification État Commentaires
{{SpecName('ES2015', '#sec-string.fromcodepoint', 'String.fromCodePoint')}} {{Spec2('ES2015')}} Définition initiale
{{SpecName('ESDraft', '#sec-string.fromcodepoint', 'String.fromCodePoint')}} {{Spec2('ESDraft')}}

Compatibilité des navigateurs

{{Compat("javascript.builtins.String.fromCodePoint")}}

Voir aussi