Base64 encoding and decoding in client-side Javascript

Mo. picture Mo. · May 12, 2010 · Viewed 694.7k times · Source

Are there any methods in JavaScript that could be used to encode and decode a string using base64 encoding?

Answer

Ranhiru Jude Cooray picture Ranhiru Jude Cooray · May 12, 2010

Some browsers such as Firefox, Chrome, Safari, Opera and IE10+ can handle Base64 natively. Take a look at this Stackoverflow question. It's using btoa() and atob() functions.

For server-side JavaScript (Node), you can use Buffers to decode.

If you are going for a cross-browser solution, there are existing libraries like CryptoJS or code like:

http://ntt.cc/2008/01/19/base64-encoder-decoder-with-javascript.html

With the latter, you need to thoroughly test the function for cross browser compatibility. And error has already been reported.