What is atob?
The atob npm package is a utility that provides a way to decode base64-encoded data back to binary form. It is a browser built-in function that has been ported to Node.js. The package is primarily used for decoding base64 strings, which is a common encoding scheme that represents binary data in an ASCII string format.
What are atob's main functionalities?
Base64 Decoding
This feature allows you to decode a base64-encoded string. The provided code sample demonstrates how to decode the string 'SGVsbG8gV29ybGQh' to its original form 'Hello World!'.
"use strict";
const atob = require('atob');
const encodedData = 'SGVsbG8gV29ybGQh';
const decodedData = atob(encodedData);
console.log(decodedData); // Outputs: Hello World!
Other packages similar to atob
btoa
The btoa package is the counterpart to atob, providing base64 encoding of binary data. While atob is used for decoding, btoa is used for encoding binary data to base64 strings.
buffer
The buffer module is built into Node.js and provides a way to handle binary data. It includes methods for encoding and decoding base64 without the need for separate packages like atob or btoa.
base-64
The base-64 package offers both encoding and decoding functionalities for base64. It is an alternative to using separate atob and btoa packages, providing a unified API for both operations.
atob
| atob
| btoa
| unibabel.js
| Sponsored by ppl
Uses Buffer
to emulate the exact functionality of the browser's atob.
Note: Unicode may be handled incorrectly (like the browser).
It turns base64-encoded ascii data back to binary.
(function () {
"use strict";
var atob = require('atob');
var b64 = "SGVsbG8sIFdvcmxkIQ==";
var bin = atob(b64);
console.log(bin);
}());
Need Unicode and Binary Support in the Browser?
Check out unibabel.js
Changelog
- v2.1.0 address a few issues and PRs, update URLs
- v2.0.0 provide browser version for ios web workers
- v1.2.0 provide (empty) browser version
- v1.1.3 add MIT license
- v1.1.2 node only
LICENSE
Code copyright 2012-2018 AJ ONeal
Dual-licensed MIT and Apache-2.0
Docs copyright 2012-2018 AJ ONeal
Docs released under Creative Commons.