--- title: window.atob slug: Web/API/WindowBase64/atob tags: - API - DOM - Reference - WindowOrWorkerGlobalScope - atob translation_of: Web/API/WindowOrWorkerGlobalScope/atob ---
{{APIRef ("HTML DOM")}}
La fonction WindowOrWorkerGlobalScope.atob() décode une chaîne de données qui a été codée en utilisant le codage en base 64. Vous pouvez utiliser la méthode {{domxref("WindowOrWorkerGlobalScope.btoa","btoa()")}} pour encoder et transmettre des données qui pourraient causer des problèmes de communication, puis les transmettre et utiliser la méthode atob() pour décoder les données . Par exemple, vous pouvez coder, transmettre et décoder des caractères de contrôle tels que les valeurs ASCII 0 à 31.
Pour une utilisation avec des chaînes Unicode ou UTF-8, voir cette note sur l'encodage et le décodage Base64 et cette note sur btoa().
var donneesDecodees = scope.atob(donneesEncodees);
Déclenche une {{jsxref("DOMException")}} si la longueur de la chaîne passée en entrée n'est pas un multiple de 4.
donneesEncodees = window.btoa('Salut, monde'); // encode une chaîne
donneesDecodees = window.atob(donneesEncodees); // décode la chaîne
| Spécification | Statut | Commentaire |
|---|---|---|
| {{SpecName('HTML WHATWG', 'webappapis.html#dom-btoa', 'WindowOrWorkerGlobalScope.atob()')}} | {{Spec2('HTML WHATWG')}} | Méthode déplacée dans le mixin WindowOrWorkerGlobalScope dans la spéc la plus récente. |
| {{SpecName('HTML WHATWG', '#dom-windowbase64-atob', 'WindowBase64.atob()')}} | {{Spec2('HTML WHATWG')}} | Pas de changement depuis l'instantané le plus récent {{SpecName("HTML5.1")}}. |
| {{SpecName('HTML5.1', '#dom-windowbase64-atob', 'WindowBase64.atob()')}} | {{Spec2('HTML5.1')}} | Instantané de {{SpecName("HTML WHATWG")}}. Pas de changement. |
| {{SpecName("HTML5 W3C", "#dom-windowbase64-atob", "WindowBase64.atob()")}} | {{Spec2('HTML5 W3C')}} | Instantané de {{SpecName("HTML WHATWG")}}. Création de WindowBase64 (les propriétés se trouvaient sur la cible avant cela). |
{{CompatibilityTable}}
| Fonctionnalité | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
|---|---|---|---|---|---|---|
| Support de base | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatGeckoDesktop(1)}}[1] {{CompatGeckoDesktop(27)}}[2] {{CompatGeckoDesktop(52)}}[3] |
10 | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} |
| Fonctionnalité | Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|
| Support de base | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatGeckoMobile(1)}} {{CompatGeckoDesktop(52)}}[3] |
{{CompatNo}} | {{CompatUnknown}} | {{CompatVersionUnknown}} |
[1] atob() est aussi disponible pour les composants XPCOM implémentés en JavaScript, même si window n'est pas l'objet global dans les composants.
[2] A partir de Firefox 27, atob() ignore tous les caractères espace dans l'argument pour se conformer à la spéc HTML5 la plus récente (voir {{bug(711180)}}).
[3] atob() maintenant définie dans le mixin {{domxref("WindowOrWorkerGlobalScope")}}.
données