HeikoH: Addition von Variablen

Das Javascript doch sehr viel anders ist wie PHP musste ich leider schon sehr oft feststellen. Problem ist eine ganz normale Addition von Variablen auszuführen.

a = 2
 b = 3
 c = a * b //gibt 6 aus, funktioniert also

a = 2
 b = 3
 c = 2 + 3 //gibt 5 aus, funktioniert also auch

aber

a = 2
 b = 3
 c = a + b //gibt 23 aus, funktioniert nicht

WARUM?

  1. Hallo,

    a = 2
    b = 3
    c = a + b //gibt 23 aus, funktioniert nicht

    WARUM?

    Zahlenwerte werden mit dem Operator + addiert, Zeichenketten hingegen konkateniert. Vermutlich stammen die Werte aus Formulartextfeldern, werden also als "2" und "3" behandelt. Mit parseInt() bzw. parseFloat() lassen sich Zeichenketten in Zahlenwerte umwandeln.

    MfG, Thomas

    1. Hallo,

      a = 2
      b = 3
      c = a + b //gibt 23 aus, funktioniert nicht

      WARUM?

      Zahlenwerte werden mit dem Operator + addiert, Zeichenketten hingegen konkateniert. Vermutlich stammen die Werte aus Formulartextfeldern, werden also als "2" und "3" behandelt. Mit parseInt() bzw. parseFloat() lassen sich Zeichenketten in Zahlenwerte umwandeln.

      MfG, Thomas

      Ich bin immer mehr für Beispriele zur Erläuterung.
      Ich will nicht "betteln", aber...
      ...aber kannst Du es mir bitte an diesem "Script" BEISPIELHAFT erläutern?

      1. Hallo.

        Ich bin immer mehr für Beispriele zur Erläuterung.
        Ich will nicht "betteln", aber...
        ...aber kannst Du es mir bitte an diesem "Script" BEISPIELHAFT erläutern?

        Ich mach das dann mal:

        <script type="text/javascript" language="JavaScript">
        <!--
         a = 2;
         b = 3;
         c = a + b;
         window.alert("Die Addition der Zahlen " + a + " und " + b + " ergibt die Zahl: " + c);

        a = "2";
         b = "3";
         c = a + b;
         window.alert("Das Verknüpfen der Zeichenketten "" + a + "" und "" + b + "" ergibt die Zeichenkette: "" + c + """);

        a = "2";
         b = "3";
         c = parseInt(a) + parseFloat(b);
         window.alert("Die Addition der in Zahlen umgewandelten Zeichenketten "" + a + "" und "" + b + "" ergibt die Zahl: " + c + "\n\nparseFloat() wandelt die Zeichenkette in eine Kommazahl um\nparseInt() wandelt die Zeichenkette in eine Ganzzahl um");
        //-->
        </script>

        Probier das Script einfach mal aus, und guck was passiert.

        Weiterführend:
        http://selfhtml.teamone.de/javascript/sprache/operatoren.htm#berechnung
        http://selfhtml.teamone.de/javascript/sprache/operatoren.htm#zeichenkettenverknuepfung
        http://selfhtml.teamone.de/javascript/objekte/unabhaengig.htm#parse_int
        http://selfhtml.teamone.de/javascript/objekte/unabhaengig.htm#parse_float

        Gruß
        Norbert

        1. Hallo.

          Ich bin immer mehr für Beispriele zur Erläuterung.
          Ich will nicht "betteln", aber...
          ...aber kannst Du es mir bitte an diesem "Script" BEISPIELHAFT erläutern?

          Ich mach das dann mal:

          <script type="text/javascript" language="JavaScript">
          <!--
          a = 2;
          b = 3;
          c = a + b;
          window.alert("Die Addition der Zahlen " + a + " und " + b + " ergibt die Zahl: " + c);

          a = "2";
          b = "3";
          c = a + b;
          window.alert("Das Verknüpfen der Zeichenketten "" + a + "" und "" + b + "" ergibt die Zeichenkette: "" + c + """);

          a = "2";
          b = "3";
          c = parseInt(a) + parseFloat(b);
          window.alert("Die Addition der in Zahlen umgewandelten Zeichenketten "" + a + "" und "" + b + "" ergibt die Zahl: " + c + "\n\nparseFloat() wandelt die Zeichenkette in eine Kommazahl um\nparseInt() wandelt die Zeichenkette in eine Ganzzahl um");
          //-->
          </script>

          Probier das Script einfach mal aus, und guck was passiert.

          Weiterführend:
          http://selfhtml.teamone.de/javascript/sprache/operatoren.htm#berechnung
          http://selfhtml.teamone.de/javascript/sprache/operatoren.htm#zeichenkettenverknuepfung
          http://selfhtml.teamone.de/javascript/objekte/unabhaengig.htm#parse_int
          http://selfhtml.teamone.de/javascript/objekte/unabhaengig.htm#parse_float

          Gruß
          Norbert

          Dankeschön Norbert, dass DU Dir die Arbeit gemacht hast und ja, es funktioniert.
          In jedem PHP Handbuch und Anleitung stehen einfache Rechenbeispiele mit Variablen drin. Bei Javascript ist es nicht der Fall.
          Daher meine Fragen hierzu.
          Also dann, nocheinmal ganz herzlich dankeschön.

          HeikoH