Encoding and decoding binary data as a base64 string using JavaScript in the browser
The base implementation of JavaScript does not include base64 encoding or decoding. However, all modern browsers include the atob
and btoa
methods to decode and encode base64 data respectively. These are methods of the window object, defined by the JavaScript runtime.
How to do it…
It's as easy as a method call:
var encodedData = window.btoa("Hello world"); var decodedData = window.atob(encodedData);
How it works…
The btoa
function takes a string and returns the base64 encoding of that string. It's a method of the window object and calls to native browser code. The atob
function does the reverse, taking a string containing base64 and returning a string with the binary data.
See also
For a summary of btoa
and atob
, see the Mozilla developer website at https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/Base64_encoding_and_decoding (note that while the documentation is...