Stringvergleich
Karl
- javascript
Hi!
ich möchte ein Strinvergleich durchführen. Opera verhält sich so wie ich es erwarte, Mozilla Firefox und der Internet Explorer jedoch nicht
if (id.toUpperCase().substr(0,1) != "L"){
}
warum gehen die Browser Mozilla Firefox und Internet Explorer in die Bedingung?
Wenn ich vorher "id.toUpperCase().substr(0,1)" mit alert ausgeben lasse, wird "L" ausgegeben.
Es ist sicherlich nur ein Flüchtigkeitsfehler; ich komme jedoch nicht drauf...
Karl
Hi Karl!
Es ist sicherlich nur ein Flüchtigkeitsfehler; ich komme jedoch nicht drauf...
Wo und wie ist der Code eingebunden?
Kann es sein, dass der Code schon ausgeführt wird, während das Dokument noch lädt?
MfG H☼psel
Hi!
»» Es ist sicherlich nur ein Flüchtigkeitsfehler; ich komme jedoch nicht drauf...
Wo und wie ist der Code eingebunden?
Kann es sein, dass der Code schon ausgeführt wird, während das Dokument noch lädt?
dieser Codeabschnitt ist in einer Funktion, die bei ondblclick aufgerufen wird.
Ich habe den Fehler schon gefunden. Die Abfrage hatte richtig funktioniert. ich dachte, dass die Abfrage ausgeführt wurde, da ein xmlRequest auftrat. der Fehler trat jedoch auf, da ein "xmlRequest.send(null);" außerhalb der Bedingung war. warum Opera keine Fehlermeldung in der Fehlerkonsole ausgegeben hat, ist mir nicht ganz klar.
Karl
if (id.toUpperCase().substr(0,1) != "L"){
}
> warum gehen die Browser Mozilla Firefox und Internet Explorer in die Bedingung?
tun sie das? Be miir nicht
~~~javascript
var id ="lala";
if (id.toUpperCase().substr(0,1) != "L"){alert('L');}
Ich würde die Funktionen aber andersrum anwenden, erst den String kürzen und dann in die Großbuchstaben transformieren. Das dürfte etwas schneller sein.
Struppi.
Hallo,
Ich würde die Funktionen aber andersrum anwenden, erst den String kürzen und dann in die Großbuchstaben transformieren.
Ich auch, mit: id[0].toUpperCase()
Denn einzelne Zeichen in Strings lassen sich bequem wie Array-Elemente über einen Index ansprechen.
Gruß, Don P
» Ich würde die Funktionen aber andersrum anwenden, erst den String kürzen und dann in die Großbuchstaben transformieren.
Ich auch, mit:
id[0].toUpperCase()
Denn einzelne Zeichen in Strings lassen sich bequem wie Array-Elemente über einen Index ansprechen.
Auch das geht, aber nicht in allen Browsern.
Struppi.
Hallo,
Auch das geht, aber nicht in allen Browsern.
Mag sein, es gibt ja hunderte...
Die Array-Variante ist anscheinend nicht in ECMAscript spezifiziert (jaja, RTFM, hätte ich gleich beherzigen sollen).
Aber id.charAt(0)
sollte ok sein und immer das erste Zeichen liefern, wahrscheinlich schneller als substr(0,1)
, auf jeden Fall lesbarer.
Gruß, Don P