Ein Tipp zu JavaScript
Dienstag, den 13. Mai 2008Ralph Steyer hat diesen JavaScript-Tipp für Sie zusammengestellt.
Die Manipulation von Texten gehört sicher zu den wichtigsten Aktionen bei komplexeren Skripten. Gerade im Zusammenhang mit Formulareingaben, denn diese werden rein als Strings weiter verarbeitet. Aber auch bei vielen anderen Vorgängen wie dem dynamischen Schreiben von Webseiten etc.
Dem ungeachtet zählt der Umgang mit Strings in JavaScript glücklicher Weise zu den eher einfachen Techniken, denn Ihnen stehen zahlreiche Standardfunktionalitäten zur Verfügung, die Ihnen die Arbeit mit Texten extrem erleichtern. Da in JavaScript Texte Objekte der Klasse String sind, können Sie mit verschiedensten Methoden dieser Klasse Zeichenketten manipulieren oder analysieren. Eine Instanz von String brauchen Sie in der Regel nicht eigens erzeugen, da es sich bei Strings um ein so genanntes Built-In-Objekt handelt.
Eine Zuweisung der Form text=”Die Antwort ist 42″; erzeugt automatisch ein String-Objekt.
Eine Verwendung des new-Schlüsselwortes in Verbindung mit einem Konstruktor in der Form text = new String(”Die Antwort ist 42″); funktioniert aber auch. In einigen Situationen ist das sogar notwendig
Wie finde ich nun die Länge eines Strings heraus?
Es gibt zahllose Situationen, in denen die Anzahl der Zeichen in einem String (die Länge) von Interesse ist. Etwa bei einer Benutzereingabe wie einem Passwort in einem Webformularfeld, wobei eine minimale Anzahl an Zeichen enthalten sein muss. Sie brauchen dabei die Länge eines Strings nicht über die Anwendung irgendwelcher komplexen Funktionen herausfinden. Ein jeder String “weis” als Objekt selbst, wie viele Zeichen er enthält. Sie müssen ihn nur fragen. Und zwar, was seine Eigenschaft length für einen Wert enthält.
Beispiel:
01 <html>
02 <body>
03 <script language=”Javascript”>
04 document.write(
05 “Wie lange ist der Text : ” +
06 “Wie lange ist der Text : “.length + “<br>”);
07 t = “Das geht auch: “;
08 document.write(t + t.length + “<br>”);
09 t1 = new String(”Und das auch: “);
10 document.write(t1 + t1.length + “<br>”);
11 </script>
12 </body>
13 </html>
In Zeile 6 fragen wir unmittelbar die Länge von einem Stringliteral per Punktnotation ab. In Zeile 8 wird hingegen eine Stringvariable verwendet, deren Anzahl an enthaltenen Zeichen ausgegeben wird. Zeile 9 zeigt Ihnen die Erzeugung eines Strings mit der expliziten Anwendung des Konstruktors und in Zeile 10 fragen wir die Anzahl der enthaltenen Zeichen ab.
Hinweis: Ralph Steyer ist Autor eines Online-Trainings und eines Video-Trainings (auf DVD) zum Thema “JavaScript”.