19. marts 2007 - 15:40
Der er
9 kommentarer
Lægge to comma tal med sammen
Hvordan lægger jeg 1.200,20 og 2.500,60 sammen Vh. Guest
Annonceindlæg fra Cognizant
19. marts 2007 - 15:43
#1
Ændrer kommaerne til engelsk decimal-punktum og fjerner 1000-tals-separatoren: var tal1 = "1.200,20"; var tal2 = "2.500,60"; tal1 = +tal1.replace(/\./g,"").replace(/,/,"."); tal2 = +tal2.replace(/\./g,"").replace(/,/,"."); var sum = tal1 + tal2; alert(sum);
19. marts 2007 - 21:09
#2
OK snilt, men hvorfor bliver resultatet 3700.8 , jeg vil jo helst vise det som 3700.80
19. marts 2007 - 21:36
#3
Tjah, så må du jo formattere det tilbage igen !-) F.eks. med denne: <script type="text/javascript"> function ins1000Sep(val){ val = val.replace(/\./,",").split(","); val[0] = val[0].split("").reverse().join(""); val[0] = val[0].replace(/(\d{3})/g,"$1."); val[0] = val[0].split("").reverse().join(""); val[0] = val[0].indexOf(".")==0?val[0].substring(1):val[0]; val[1] = val[1] ? (val[1]+"00").substr(0,2) : "00"; return val.join(","); } function rem1000Sep(val){ return val.replace(/\./g,""); } </script>
19. marts 2007 - 22:16
#4
Jeg får lyst til at erklære en funktion: function parseFloatStrip(valStr, decChar){ // numeric string, decimal separator var fVal; if (decChar == ',') { fVal = +valStr.replace(/\./g,"").replace(/,/g,"."); } else if (decChar == '.'){ fVal = +valStr.replace(/,/g,""); } return fVal; } alert(parseFloatStrip("1,200.20",".")+parseFloatStrip("2.500,60",","))
20. marts 2007 - 11:35
#5
Det er jo pragtfuldt med alt den hjælp !!! Smider I lige begge et svar, så kan jeg dele lidt point ud. Tak for hjælpen
20. marts 2007 - 21:26
#6
U're welcome '-)
23. marts 2007 - 09:29
#7
:-)
23. marts 2007 - 09:32
#8
roenving: Hm, nu har jeg forsøgt at acceptere dit svar 4 gange, men "eksperten" ser ud til at være ligeglad :-(
23. marts 2007 - 14:07
#9
Du skal huske at markere navnet i boksen til venstre !-)
Vi tilbyder markedets bedste kurser inden for webudvikling