2009 27 Feb

Javascript “Wie konvertierte ich europäische Zahlen in amerikanische?”

Gerade rechnen mit Benutzereingaben in JavaScript ist immer wieder eine Herausforderung. Besonders dann, wenn man mit Zahlen arbeitet. Manche behelfen sich, indem sie dem Benutzer einen Dezimalpunkt zumuten.Daher hier eine kleine Funktion welche Zahleneingaben entgegennimmt und sie in eine – für JavaScript – verträgliche Gleitkommazahl umwandelt. Natürlich wird darauf Rücksicht genommen ob die Zahl im europäischen (Dezimalkomma) oder anglikanischen (Dezimalpunkt) Zahlenformat vorliegt.

?View Code JAVASCRIPT
function conv2Number(strWert) {
  var posPnt = strWert.indexOf(".", 0);
  var posCol = strWert.indexOf(",", 0);
  strWert = strWert.replace(/ /, '');
  if (posCol < 0) {
    posCol = strWert.length;
  }
  //anglikanisches Format
  if (posCol < posPnt) {
    strWert = strWert.replace(/,/, '');
    return parseFloat(strWert);
  }
  while ((0 <= posPnt) && (posPnt < posCol)) {
    strWert = strWert.substring(0, posPnt) +
              strWert.substring(posPnt + 1, strWert.length);
    posPnt  = strWert.indexOf(".", 0);
    posCol--;
  }
  posCol = strWert.indexOf(",", 0);
  if (posCol >= 0) {
    strWert = strWert.substring(0, posCol) + "." +
              strWert.substring(posCol + 1, strWert.length);
  }
  return parseFloat(strWert);
}

ähnliche Posts:

Dieser Eintrag wurde

Der Artikel hat Dir geholfen?

Kaffeetasse
Warum spendierst Du mir nicht einen Kaffee?
 

Sei aktiv, kommentiere diesen Artikel!

 





XHTML - Du kannst diese Tags benutzen:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

an den Anfang