Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. Les API Web
  3. Window
  4. WindowBase64.btoa()

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

WindowBase64.btoa()

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éthodeWindowOrWorkerGlobalScope.btoa() crée une chaîne ASCII codée en base 64 à partir d'un objetString dans lequel chaque caractère de la chaîne est traité comme un octet de données binaires.

Note :Étant donné que cette fonction traite chaque caractère comme un octet de données binaires, quel que soit le nombre d'octets composant le caractère, une exceptionInvalidCharacterError est déclenchée si lecode point d'un caractère quelconque est en dehors de la plage 0x00 à 0xFF. VoirChaînes Unicode pour un exemple montrant comment encoder des chaînes avec des caractères en dehors de la plage 0x00 à 0xFF.

Syntaxe

js
var donneesEncodees = scope.btoa(chaineAEncoder);

Paramètres

chaineAEncoder

Une chaîne dont les caractères représentent chacun un octet unique de données binaires à encoder en ASCII.

Valeur retournée

Une chaîne contenant la représentation Base64 de lachaineAEncoder.

Exceptions

Exemple

js
var donneesEncodees = window.btoa("Salut, monde"); // encode une chaînevar donneesDecodees = window.atob(donneesEncodees); // décode la chaîne

Notes

Vous pouvez utiliser cette méthode pour encoder des données qui, autrement, pourraient engendrer des problèmes de communication, les transmettre et utiliser alors la méthodeatob() pour décoder les données à nouveau. Par exemple, vous pouvez encoder des caractères de contrôle tels que les valeurs ASCII de 0 à 31.

btoa() est également disponible pour les composants XPCOM implémentés en JavaScript, même si {domxref("Window")}} n'est pas l'objet global dans les composants.

Chaînes Unicode

Dans la plupart des navigateurs, l'appel debtoa() sur une chaîne Unicode engendrera une exceptionInvalidCharacterError.

Une option est d'échapper tous les caractères étendus, de telle sorte que la chaîne que vous voulez en fait encoder soit une représentation ASCII de l'original. Voyez cet exemple, noté parJohan Sundström :

js
// Chaîne ucs-2 en ascii encodé en base64function uena(chn) {  return window.btoa(unescape(encodeURIComponent(chn)));}// Ascii encodé en base64 en chaîne ucs-2function aenu(chn) {  return decodeURIComponent(escape(window.atob(chn)));}// Usage :uena("✓ à la mode"); // 4pyTIMOgIGxhIG1vZGU=aenu("4pyTIMOgIGxhIG1vZGU="); // "✓ à la mode"uena("I \u2661 Unicode!"); // SSDimaEgVW5pY29kZSE=aenu("SSDimaEgVW5pY29kZSE="); // "I ♡ Unicode!"

Une solution meilleure, plus fiable et moins coûteuse consiste àutiliser des tableaux typés pour faire la conversion.

Spécifications

Specification
HTML
# dom-btoa-dev

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-2026 Movatter.jp