gue: if-anweisung bzw string-funktionen in js

hallo

ich will folgenden vb-code in js abbilden:

if right(var1,3) = "abc" then  

....
  end if

wer kann mir weiterhelfen?

danke
gue

  1. Hi,

    ich will folgenden vb-code in js abbilden:

    »»  if right(var1,3) = "abc" then

    ....
      end if

    if(var1.substring(var1.length-3) == "abc)
    {
    }

    lies dir vielleicht auch mal SelfHTML durch, steht da alles genau drin beschrieben...

    mfg
    CK1

  2. hallo

    ich will folgenden vb-code in js abbilden:

    »»  if right(var1,3) = "abc" then

    ....
      end if

    wer kann mir weiterhelfen?

    danke
    gue

    Hallo gue!

    Ich hatte vor kurzem auch so ein Problem. In JavaScript ist es eben nicht möglich, die Richtung des Durchlesens mit substring zu bestimmen, wie in VBSCript. Und mit -Zahlen wie bei Perl kommst auch nicht weiter.
    Da musst Du die Funktion schon austricksen.

    Hier die Lösung

    Inhalt = document....... // Speichere den String als Variable ab.
    Inhalt.length = x // Bestimme Länge des Strings und wiederum in
                      // Variable speichern.
    Test = Inhalt.Substring(x-3,x); // Auslesen der letzten 3 Zeichen.
    if (Test != abc){   // Prüfen, ob die letzten 3 Zeichen nicht abc
                        // sind, wenn ja, Meldung anführen.
    alert('Die Eingabe sollte mit abc enden!);
    return (false);
    }

    Du kannst natürlich auch alles enger zusammenquetschen, musst nicht unbedingt alles zuerst in Variablen umwandeln, aber es ist übersichtlicher.

    Gruß, Jan

    1. Moin!

      Ich hatte vor kurzem auch so ein Problem. In JavaScript ist es eben nicht möglich, die Richtung des Durchlesens mit substring zu bestimmen, wie in VBSCript. Und mit -Zahlen wie bei Perl kommst auch nicht weiter.

      Du meinst negative Zahlen, um vom Stringende aus zu adressieren? Doch, das geht auch in JS. Siehe http://developer.netscape.com/docs/manuals/js/client/jsref/string.htm#1194618.

      Inhalt = document....... // Speichere den String als Variable ab.
      Inhalt.length = x // Bestimme Länge des Strings und wiederum in
                        // Variable speichern.

      Sollte wohl eher
          x = Inhalt.length;
      heissen.

      Test = Inhalt.Substring(x-3,x); // Auslesen der letzten 3 Zeichen.

      JS ist case-sensitive, also substring statt Substring! Einfacher ist es aber mit substr. Dort kann man den zweiten Parameter (Anzahl der zu extrahierenden Zeichen) weglassen, um alles bis zum Stringende zu bekommen. Also
          Test = Inhalt.substr(x-3, 3);   // oder:
          Test = Inhalt.substr(x-3);      // oder einfach:
          Test = Inhalt.substr(-3);       // somit braucht man x = Inhalt.length gar nicht mehr

      if (Test != abc){   // Prüfen, ob die letzten 3 Zeichen nicht abc

      Strings in Anfuehrungszeichen einschliessen:
          if (Test != "abc") {

      So long