Felix: Dezimal <=> Hexadezimal

Man kann ja Eingaben aus einem Formular-Input auslesen und zB der Variable ro zuweisen ...
  zB: var ro = document.farben.ro.value;

Es handelt sich um Zahleneingaben ... Es ist aber nicht möglich mit ro zu rechnen ... Wie wandel ich die Eingabe (Zahl) in eine Zahl, mit der man in JS rechnen kann um?
Danke!

Gibt es eine Möglichkeit,

  1. Hi,

    Es handelt sich um Zahleneingaben ...

    Nein, um alphanumerische Texteingabe.

    Es ist aber nicht möglich mit ro zu rechnen ...

    Halt in eine Zahl umwandeln.

    Wie wandel ich die Eingabe (Zahl) in eine Zahl, mit der man in JS rechnen kann um?

    Z.B. ro=1*ro;

    Gruß, Cybaer

    --
    Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
    1. Wie wandel ich die Eingabe (Zahl) in eine Zahl, mit der man in JS rechnen kann um?

      Z.B. ro=1*ro;

      Cybaer,
      Nicht besonders saubere Lösung.

      Ich würd parseInt() bzw. parseFloat() vorziehen.
      Gunnar

      --
      "Nobody wins unless everybody wins." (Bruce Springsteen)
      1. Hi,

        Z.B. ro=1*ro;

        Cybaer,
        Nicht besonders saubere Lösung.

        Cybaer ist halt recht ideologiefrei und der Erfolg gibt ihm recht.
        ;-)

        Gruss,
        Ludger

        1. Ludger,

          Cybaer ist halt recht ideologiefrei und der Erfolg gibt ihm recht.
          ;-)

          Bis in einer künftigen JS-Version mit Typen nicht mehr so sorglos umgegangen werden darf. Dann ist mein Tag gekommen. ;-)
          Gunnar

          --
          "Nobody wins unless everybody wins." (Bruce Springsteen)
          1. Hi,

            Bis in einer künftigen JS-Version mit Typen nicht mehr so sorglos umgegangen werden darf.

            Das hat mit "sorglos" überhaupt nichts zu tun. :-)

            Gruß, Cybaer

            --
            Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
        2. Hallo,

          Z.B. ro=1*ro;

          Cybaer ist halt recht ideologiefrei und der Erfolg gibt ihm recht.

          Wieso Erfolg? parseInt ist viel toleranter gegenüber Fehleingaben, erledigt also zwei Arbeitsgänge in einem. Eine Abfrage auf NaN wäre in beiden Fällen angebracht, sonst würde beim darauffolgenden Rechnen Müll herauskommen.
          Im Übrigen, wieso heißt das Topic »Dezimal <=> Hexadezimal«? Mit 1 * "FF" wird man kein Number(255) bekommen, mit parseInt("FF", 16) schon (1*"0xFF" wäre wirklich zu umständlich). Wenn die eingegebenen Werte Dezimalwerte sind und in Hexadezimaldarstellung benötigt werden, dann sucht Felix parseInt(ro, 10).toString(16) (und eventuell .toUpperCase());

          Mathias

          1. Hi,

            Wieso Erfolg?

            Weil es das macht, was es machen soll.

            Wollte der Fragesteller etwas anderes, muß er halt besser fragen. >;->

            Im Übrigen, wieso heißt das Topic »Dezimal <=> Hexadezimal«?

            Gute Frage (s.o.). Aber auch bei deiner "Fragedeutung" kommt man nicht umhin festzustellen, daß damit a) immer noch nicht die beidseitig gerichtete Umwandlung im Titel klar wird und b) CSS ja ohnehin keine Hexadezimalzahlen benötigt, sondern mit Dezimalzahlen doch ziemlich gut klarkommt.

            Wenn die eingegebenen Werte Dezimalwerte sind und in Hexadezimaldarstellung benötigt werden, dann sucht Felix parseInt(ro, 10).toString(16) (und eventuell .toUpperCase());

            Oder lieber gleich stringInt() aus der Coding: Number-Library ... ;-)

            Gruß, Cybaer

            --
            Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
      2. Hi,

        Z.B. ro=1*ro;
        Nicht besonders saubere Lösung.

        Die JS' Typumwandlung ist spezifiziert. "Unsauber" ist nur etwas, was nicht spezifiziert wurde und ggf. zufällig richtig arbeitet.

        Ich würd ... vorziehen.

        Viele Wege scripten  vom ROM ... ;-)

        Gruß, Cybaer

        --
        Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
        1. Hi,

          Z.B. ro=1*ro;
          Nicht besonders saubere Lösung.

          Die JS' Typumwandlung ist spezifiziert. "Unsauber" ist nur etwas, was nicht spezifiziert wurde und ggf. zufällig richtig arbeitet.

          das waere dann ein hack oder (quick and) dirty.

          Wenn Du Recht haettest waere naemlich der Umkehrschluss, dass alles sauber ist, was spzifiziert worden ist. Dann wuerde man aber das Wort sauber nicht benoetigen.

          Gruss,
          Ludger

          1. Hi,

            Dann wuerde man aber das Wort sauber nicht benoetigen.

            Davon, daß es viel mehr Wörter gibt, als man wirklich benötigt, leben u.a. Thesaurus-Hersteller! ;-))

            Gruß, Cybaer

            --
            Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!