STRING ausgeb

sabine

Mitglied
Guten Abend zusammen,

aus welchen Gründen, funktioniert folgendes einfaches Script nicht ?

Code:
<script language="javascript">

 var String = "TEST";
 var i = 0;

 for( i = 0; i < String.length; i++ )
  alert( String[i] );

</script>

Mir ist schon klar, vollkommen einfach Beispiel nur ich hab keine Ahnung warum das nicht funktioniert. Die Fehlermeldung ist "undefined".

Wäre nett, wenn mir
jemand weiterhelfen könnte.
tschau
 
aber wenn ich folgende variablendeklaration verwende,
funktioniert es noch immer nicht.

Code:
<script language="javascript">

 var ganznormal = "TEST";
 var i = 0;

 for( i = 0; i < ganznormal.length; i++ )
  alert( ganznormal[i] );

</script>
 
Hi,

bei mir schon... aber versuchs mal so:
HTML:
<script language="javascript" type="text/javascript">
 var ganznormal = "TEST";
 var i = 0;

for( i = 0; i < ganznormal.length; i++ ) {
    alert( ganznormal[i] );
    // oder auch: alert(ganznormal.chartAt(i));
}
</script>

Das type-Attribut ist (im Gegensatz zum language-Attribut) erforderlich.

Gruß

P.S.: Im übrigen siehe Helas Beitrag zum Thema, warum der Arrayzugriff nicht in allen Browsern funktioniert.
.
 
Zuletzt bearbeitet:
Hallo,
String ist ein Objekt und kein stinknormales Array. Deshalb funktioniert die Abfrage mit ganznormal auch nur unter Netscape bzw. Firefox. Beim Internet Explorer und auch bei Opera muss man eine entsprechende Methode [charAt() oder substr()] verwenden. Also folgendes funktioniert bei mir bei allen Browsern:
Code:
<script language="javascript">
      var ganznormal = "TEST";
      for( var i = 0; i < ganznormal.length; i++ )
    	alert(ganznormal.substr(i,1) + " | " + ganznormal.charAt(i));
    </script>
@Datic:
Schreibfehler: charAt(i)
 
... habe ich schon vermutet, war bloß zu faul, den IE anzuwerfen um das auszuprobieren. Danke, dass Du das noch einmal klargestellt hast.

@Schreibfehler (sorry, wird sogleich korrigiert ;) )

Gruß
.
 

Neue Beiträge

Zurück