The WindowOrWorkerGlobalScope.atob()
function decodes a string of data which has been encoded using base-64 encoding. You can use the btoa()
method to encode and transmit data which may otherwise cause communication problems, then transmit it and use the atob()
method to decode the data again. For example, you can encode, transmit, and decode control characters such as ASCII values 0 through 31.
For use with Unicode or UTF-8 strings, see this note at Base64 encoding and decoding and this note at btoa()
.
var decodedData = scope.atob(encodedData);
Throws a DOMException
if the length of passed-in string is not a multiple of 4.
var encodedData = window.btoa('Hello, world'); // encode a string var decodedData = window.atob(encodedData); // decode the string
Specification | Status | Comment |
---|---|---|
HTML Living Standard The definition of 'WindowOrWorkerGlobalScope.atob()' in that specification. | Living Standard | Method moved to the WindowOrWorkerGlobalScope mixin in the latest spec. |
HTML Living Standard The definition of 'WindowBase64.atob()' in that specification. | Living Standard | No change since the latest snapshot, HTML 5.1. |
HTML 5.1 The definition of 'WindowBase64.atob()' in that specification. | Recommendation | Snapshot of HTML Living Standard. No change. |
HTML5 The definition of 'WindowBase64.atob()' in that specification. | Recommendation | Snapshot of HTML Living Standard. Creation of WindowBase64 (properties were on the target before it). |
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | 1.0 (1.7 or earlier)[1] 27 (27)[2] 52 (52)[3] | 10 | (Yes) | (Yes) |
Feature | Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | 1.0 (1) 52 (52)[3] | No support | ? | (Yes) |
[1] atob()
is also available to XPCOM components implemented in JavaScript, even though window
is not the global object in components.
[2] Starting with Firefox 27, atob()
ignores all space characters in the argument to comply with the latest HTML5 spec (see bug 711180).
[3] atob()
now defined on WindowOrWorkerGlobalScope
mixin.
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/atob