Gelöst - Entfernen von führenden und endenden Nullen in einer Variable

Iceboone

Neues Mitglied
Hallo,

ich habe eine Funktion mit der ich versuche aus einer Nummer in der Variable Nr die führenden und endenden Nullen zu entfernen:


Beispiel:

Javascript:
var Nr='00000023233132121310000000';


cleannr = deleteZeros(gdvvnr);


function deleteZeros(stringx)

{

    while(stringx.charAt(0) == "0")

        stringx = stringx.substring(1);//Gibt gesamten String ab Stelle 1(also 2. Char)

       

    while(stringx.charAt(stringx.length-1) == "0")

        strinx = stringx.substring(0,stringx.length-1);//Gibt den gesamten String außer letzte Stelle

       

    return stringx;

Leider kann ich keine console.log durchführen, da ich das in einem Skript innerhalb eines Programms verwende. Ergebnis ist jedoch das Programm schmiert mir ab. Diese Funktion lässt also irgendwie einen Hänger zu ohne das es wegen eines Fehlers abbricht.

Kann mir hier jemand sagen woran das liegt?

Gibt es eine bessere Möglichkeit die Variable so zu definieren: 2323313212131 statt so 00000023233132121310000000

Danke für eure Hilfe

Gruß Volker
 
Zuletzt bearbeitet:
Sorry Leute, ich habe diesen Fehler gesucht und gesucht. Und dabei total übersehen das in Zeile 19 strinx steht, statt stringx.

Das Ding funktioniert jetzt. Meine Tastatur klemmt einfach und ich sehe nach 3 Stunden einfach den Wald vor lauterBäumen nicht mehr. Kann man den Beitrag auch löschen?

Hat sich jetzt erledigt, es sei denn es gibt eine elegantere Möglichkeit die Nullen zu entfernen :)
 
OK. Ich denke aber ein
return stringx.replace(/^0+|0+$/g, '');
sollte die einzige Zeile sein, die du in deiner Funktion brauchst.
 
Ja, natürlich. Hier kannst du das auch selbst testen:
Das was ersetzt wir, ist entsprechend gehighlightet. Nullen die von anderen Ziffern umgeben sind entsprechen nicht den beiden Patterns.
 
Dann kann ich mir die ganze Funktion sparen, sondern setze dies einfach hinter meine Variable nach dem Motto.

cleannr = vnr.replace(/^0+|0+$/g, '');

Das macht es ja noch leichter :)

Danke
 
Zurück
Oben Unten