Bir Dizeyi Base64'e Kodlamak için JavaScript Programı

Bu örnekte, bir dizeyi Base64'e kodlayacak bir JavaScript programı yazmayı öğreneceksiniz.

Bu örneği anlamak için, aşağıdaki JavaScript programlama konuları hakkında bilgi sahibi olmalısınız:

  • JavaScript Dizesi

Base64 , ikili verileri bir ASCII dize formatında bir radix-64 gösterimine çevirerek temsil eden bir ikili-metin kodlama şemaları grubudur.

Örnek 1: btoa () Kullanarak Bir Dizeyi Base64 Olarak Kodlayın

 // program to encode a string to Base64 // defining the string const str = "Learning JavaScript"; // encoding the string const result = window.btoa(str); console.log(result); // decoding the string const result1 = window.atob(result); console.log(result1);

Çıktı

 TGVhcm5pbmcgSmF2YVNjcmlwdA == JavaScript Öğrenme

Yukarıdaki örnekte, btoa()yöntem dizeyi Base64'e dönüştürmek için kullanılır .

atob()Yöntem dönüştürmek için kullanılan Base64 bir dizeye.

Örnek 2: Base64 Nesnesini Kullanarak Bir Dizeyi Base64 Olarak Kodlama

 // program to encode a string to Base64 // create Base64 Object const Base64 = ( // private property _keyStr : "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=", // public method for encoding encode : function (input) ( let output = ""; let chr1, chr2, chr3, enc1, enc2, enc3, enc4; let i = 0; input = Base64._utf8_encode(input); while (i > 2; enc2 = ((chr1 & 3) <> 4); enc3 = ((chr2 & 15) <> 6); enc4 = chr3 & 63; if (isNaN(chr2)) ( enc3 = enc4 = 64; ) else if (isNaN(chr3)) ( enc4 = 64; ) output = output + Base64._keyStr.charAt(enc1) + Base64._keyStr.charAt(enc2) + Base64._keyStr.charAt(enc3) + Base64._keyStr.charAt(enc4); ) return output; ), // public method for decoding decode : function (input) ( let output = ""; let chr1, chr2, chr3; let enc1, enc2, enc3, enc4; let i = 0; input = input.replace(/(^A-Za-z0-9+/=)/g, ""); while (i < input.length) ( enc1 = Base64._keyStr.indexOf(input.charAt(i++)); enc2 = Base64._keyStr.indexOf(input.charAt(i++)); enc3 = Base64._keyStr.indexOf(input.charAt(i++)); enc4 = Base64._keyStr.indexOf(input.charAt(i++)); chr1 = (enc1 <> 4); chr2 = ((enc2 & 15) <> 2); chr3 = ((enc3 & 3) << 6) | enc4; output = output + String.fromCharCode(chr1); if (enc3 != 64) ( output = output + String.fromCharCode(chr2); ) if (enc4 != 64) ( output = output + String.fromCharCode(chr3); ) ) output = Base64._utf8_decode(output); return output; ), // private method for UTF-8 encoding _utf8_encode : function (string) ( string = string.replace(//g,""); let utftext = ""; for (let n = 0; n < string.length; n++) ( let c = string.charCodeAt(n); if (c 127) && (c > 6) | 192); utftext += String.fromCharCode((c & 63) | 128); ) else ( utftext += String.fromCharCode((c>> 12) | 224); utftext += String.fromCharCode(((c>> 6) & 63) | 128); utftext += String.fromCharCode((c & 63) | 128); ) ) return utftext; ), // private method for UTF-8 decoding _utf8_decode : function (utftext) ( let string = ""; let i = 0; let c = c1 = c2 = 0; while ( i < utftext.length ) ( c = utftext.charCodeAt(i); if (c 191) && (c < 224)) ( c2 = utftext.charCodeAt(i+1); string += String.fromCharCode(((c & 31) << 6) | (c2 & 63)); i += 2; ) else ( c2 = utftext.charCodeAt(i+1); c3 = utftext.charCodeAt(i+2); string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63)); i += 3; ) ) return string; ) ) // define the string const string = 'Learning JavaScript'; // encode the String const encodedString = Base64.encode(string); console.log(encodedString); // decode the String const decodedString = Base64.decode(encodedString); console.log(decodedString);

Çıktı

 TGVhcm5pbmcgSmF2YVNjcmlwdA == JavaScript Öğrenme. 

encode()Yöntem Base64 için bir dizi kodlar. decode()Yöntem, bir dizeye Base64 deşifre eder.

Ilginç makaleler...