0% found this document useful (0 votes)
440 views1 page

JQ - Encode-Decode Strings Using Base64

This document provides a method for encoding and decoding strings with Base64 in JavaScript. It defines a Base64 object with encode and decode methods. The encode method takes a string as input and returns the Base64-encoded version. The decode method takes a Base64-encoded string and returns the original decoded string. It demonstrates encoding and then decoding a sample string "Hello World!".

Uploaded by

info.glcom5161
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
440 views1 page

JQ - Encode-Decode Strings Using Base64

This document provides a method for encoding and decoding strings with Base64 in JavaScript. It defines a Base64 object with encode and decode methods. The encode method takes a string as input and returns the Base64-encoded version. The decode method takes a Base64-encoded string and returns the original decoded string. It demonstrates encoding and then decoding a sample string "Hello World!".

Uploaded by

info.glcom5161
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 1

encode-and-decode-strings-with-base64-in-javascript

https://scotch.io/quick-tips/how-to-encode-and-decode-strings-with-base64-in-jav
ascript
Cross-Browser Method (compressed)
// Create Base64 Object
var Base64={_keyStr:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456
789+/=",encode:function(e){var t="";var n,r,i,s,o,u,a;var f=0;e=Base64._utf8_enc
ode(e);while(f<e.length){n=e.charCodeAt(f++);r=e.charCodeAt(f++);i=e.charCodeAt(
f++);s=n>>2;o=(n&3)<<4|r>>4;u=(r&15)<<2|i>>6;a=i&63;if(isNaN(r)){u=a=64}else if(
isNaN(i)){a=64}t=t+this._keyStr.charAt(s)+this._keyStr.charAt(o)+this._keyStr.ch
arAt(u)+this._keyStr.charAt(a)}return t},decode:function(e){var t="";var n,r,i;v
ar s,o,u,a;var f=0;e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");while(f<e.length){s=thi
s._keyStr.indexOf(e.charAt(f++));o=this._keyStr.indexOf(e.charAt(f++));u=this._k
eyStr.indexOf(e.charAt(f++));a=this._keyStr.indexOf(e.charAt(f++));n=s<<2|o>>4;r
=(o&15)<<4|u>>2;i=(u&3)<<6|a;t=t+String.fromCharCode(n);if(u!=64){t=t+String.fro
mCharCode(r)}if(a!=64){t=t+String.fromCharCode(i)}}t=Base64._utf8_decode(t);retu
rn t},_utf8_encode:function(e){e=e.replace(/\r\n/g,"\n");var t="";for(var n=0;n<
e.length;n++){var r=e.charCodeAt(n);if(r<128){t+=String.fromCharCode(r)}else if(
r>127&&r<2048){t+=String.fromCharCode(r>>6|192);t+=String.fromCharCode(r&63|128)
}else{t+=String.fromCharCode(r>>12|224);t+=String.fromCharCode(r>>6&63|128);t+=S
tring.fromCharCode(r&63|128)}}return t},_utf8_decode:function(e){var t="";var n=
0;var r=c1=c2=0;while(n<e.length){r=e.charCodeAt(n);if(r<128){t+=String.fromChar
Code(r);n++}else if(r>191&&r<224){c2=e.charCodeAt(n+1);t+=String.fromCharCode((r
&31)<<6|c2&63);n+=2}else{c2=e.charCodeAt(n+1);c3=e.charCodeAt(n+2);t+=String.fro
mCharCode((r&15)<<12|(c2&63)<<6|c3&63);n+=3}}return t}}
// Define the string
var string = 'Hello World!';
// Encode the String
var encodedString = Base64.encode(string);
console.log(encodedString); // Outputs: "SGVsbG8gV29ybGQh"
// Decode the String
var decodedString = Base64.decode(encodedString);
console.log(decodedString); // Outputs: "Hello World!"

You might also like