Murphy's World @ home

server holyghost alias dyndns.murphys-world.de

START
Projekt Murphy's CMSmini JavaScript TIPPS & TRICKS GeoCaching
NEWS TERMINE FUNSTUFF LINKS
VIP-BEREICH KONTAKT IMPRESSUM

JavaScript Tipps & Tricks
String-Funktionen base64_encode() und base64_decode()

Base64-Kodierung kommt immer dann zum Einsatz, wenn es darum geht, binäre Daten in ein anzeigbares, übertragungssicheres Format umzuwandeln z.B. zur Übertragung von Emails-Anhängen (Attachments) wie Bildern oder anderen Binärdaten.

Bei der Base64-Kodierung werden immer 3 Byte Binärdaten zu 4 Byte Base64-Daten umgewandelt, weswegen die codierten Daten rund ein Drittel größer sind als die ursprünglichen Binärdaten. Base64-codierte Daten lassen sich allerdings sehr gut komprimieren, was dieses Manko ausgleicht.

Detailiertere Informationen zur Base64-Kodierung finden sich unter http://de.wikipedia.org/wiki/Base64 oder im RFC-3548.

 

Zeichenkette oder Binärdaten nach base64 kodieren

Beschreibung:

Die nachfolgende Funktion bildet die in JavaScript bzw. JScript fehlende Funktionalität zum Kodieren nach.

Die Funktion erwartet die zu kodierenden Daten als einzigen Parameter.

 

Syntax:

string base64_encode ( string s )

 

Übergabewerte:

s = die zu kodierende Zeichenkette

 

Quelltext:

ab JavaScript 1.2

function base64_encode(s) {
var m="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
var r="";
var i=0;
var x,y,z;
var a,b,c,d;
while(i<s.length) {
x=s.charCodeAt(i++);y=s.charCodeAt(i++);z=s.charCodeAt(i++);
a=x>>2;b=((x&3)<<4)|(y>>4);c=((y&15)<<2)|(z>>6);d=z&63;
if(isNaN(y))c=d=64;else if(isNaN(z))d=64;
r+=m.charAt(a)+m.charAt(b)+m.charAt(c)+m.charAt(d);
}
return r;
}

 

Zeichenkette oder Binärdaten aus base64 dekodieren

Beschreibung:

Die nachfolgende Funktion bildet die in JavaScript bzw. JScript fehlende Funktionalität zum Dekodieren nach.

Die Funktion erwartet die zu dekodierenden Base64-Daten als einzigen Parameter.

 

Syntax:

string base64_decode ( string s )

 

Übergabewerte:

s = die zu dekodierende Zeichenkette

 

Quelltext:

ab JavaScript 1.2

function base64_decode(s) {
var m="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
var r="";
var i=0;
var x,y,z;
var a,b,c,d;
s=s.replace(/[^A-Za-z0-9\+\/\=]/g,"");
while(i<s.length) {
a=m.indexOf(s.charAt(i++));b=m.indexOf(s.charAt(i++));
c=m.indexOf(s.charAt(i++));d=m.indexOf(s.charAt(i++));
x=(a<<2)|(b>>4);y=((b&15)<<4)|(c>>2);z=((c&3)<<6)|d;
r+=String.fromCharCode(x)+
(c!=64?String.fromCharCode(y):"")+
(d!=64?String.fromCharCode(z):"");
}
return r;
}

 

Beispiel:

Eingabe

<script type="text/javascript">
alert (
  base64_encode("Hallo Welt") + "\n" +
base64_decode("TXVycGh5IFd5bGVy") );
</script>

Ausgabe

SGFsbG8gV2VsdA==
Murphy Wyler

 

Lizenzbestimmungen:

Die auf dieser Seite notierten Scripte base64_encode() und base64_decode() sind Public Domain.

 

Zurück zur JavaScript Funktionsübersicht

 

© 2026 Murphy's World     Alle Rechte vorbehalten     Impressum