Webdesign mit CSS, HTML und Javascript
Stil mit {stil}
![]() Praxistests aktueller Kameras, Bildbearbeitung und Bildgestaltung foto.5lux.de Online-Magazin für Fotografie und Bildbearbeitung |
Jul 2008
encodeURI(s), decodeURI(uri), String(obj) und number(obj)
encodeURI(s) nimmt einen String s und gibt seine codiert Version zurück (wobei bestimmte Zeichen durch ein, zwei oder drei Escape-Sequenzen ersetzt werden, die eine UTF-8-Encodierung eines Zeichens darstellen), ohne den Originalstring zu ändern. Durch die Codierung wird der String portabel und kann auf allen Systemen, die Ascii unterstützen, korrekt dargestellt werden.
Alle anderen Zeichen werden entweder zu zwei Ziffern (%xx) oder ihrem hexadezimalen Äquivalent (%uxxxx) mit vier Ziffern konvertiert. Ein Leerzeichen wird z.B. durch %20 und ein Semikolon durch %3B dargestellt.
encodeURI(string) verschlüsselt alle Zeichen außer a-z, A-Z, 0-9 und ! ' $ & / 8 ) ? , . - # + ; : _ *.
myString = encodeURI( eingabe ); myOriginal = decodeURI( myString );
encodeURI() wandelt den übergebenen Parameter in eine URL um, wobei encodeURI( "meine Webseite.html#oben" ) meine%20Webseite.html#oben zurückgibt – das Trennzeichen für einen HTML-Anker wird nicht in die hexadezimale Form %23 umgewandelt. Wenn die URL als Parameter an ein CGI-Skript übergeben werden soll, muss encodeURIComponent() verwendet werden.
encodeURI() sollte aus Sicherheitsgründen mit jeder Benutzereingabe, die als Teil einer URI übergeben wird, aufgerufen werden. Wird die Eingabe nicht codiert, würde eine Benutzereingabe wie Meier &id=cid als "name=Meier%20&id=cid" übertragen und anstelle eines POST-Schlüssels für name hätten wir zwei POST-Schlüssel name und id. Wenn in einem PHP-Backend Register Globals aktiviert ist, kann eine fehlende Encodierung zu Sicherheitslücken führen.
decodeURI( uri )
decodeURI() mit eine URI, die mit encodeURI() kodiert wurde und ersetzt jede Escape-Sequenz durch das passende Zeichen.
encodeURIComponent( string )
Endcodiert ein Uniform Resource Identifier (URI), wobei bestimmte Zeichen durch ein, zwei oder drei Escape-Sequenzen ersetzt werden, die die UTF-8-Encodierung eines Zeichens darstellt.
encodeURIComponent(string) verschlüsselt alle Zeichen außer a-z, A-Z, 0-9 und ! ' ( ) . - _ *.
myString = encodeURIComponent(eingabe); myOriginal = decodeURIComponent(myString);
String( obj )
Erzeugt einen String aus einem beliebigen Objekt.
Das Argument obj muss ein Javascript-Objekt sein. Wenn kein Argument übergeben wird, gibt string() einen leeren String zurück.
var items = new Array ("Elvira", "Rosinante", 14, true);
alert(String(items));
gibt Elvira,Rosinante,14,true aus.
decodeURIComponent(uri)
decodeURIComponent() nimmt eine URI, die mit encodeURIComponent() kodiert wurde und ersetzt jede Escape-Sequenz mit dem passenden Zeichen.
number(obj)
Konvertiert das Objekt im Argument in eine Zahl, die das Objekt darstellt. Wenn sich das Objekt nicht in eine Zahl umwandeln läßt, gibt Number() NaN (not a number) zurück. Das Objekt muss ein Javascript-Objekt sein. Wenn kein Argument übergeben wird, gibt number() 0 zurück.
var foo = new Boolean( "true" ); alert( Number( foo ) );
gibt 1 zurück
