Új hozzászólás Aktív témák

  • Sk8erPeter

    nagyúr

    válasz LógaGéza #3795 üzenetére

    Ez a Dollar() függvény, meg annak felhasználási módja úgy, ahogy van, rossz, ne ilyenből próbáld megtanulni a JavaScriptet. :) Nem tudom, honnan származik a függvény, de felejtős. Már eleve a neve félrevezető, nem is értem, honnan kapta. :) Azt sem tudom, mire jó, hogy amennyiben 0 és 1 közötti számot adok be neki, akkor levágja az elejéről a 0-t, és marad a tizedespont utáni rész, aminél ráadásul be van drótozva a pont (nincs lehetőség ennek átadására), pedig ez országfüggő lehet, lásd mi például a tizedesvesszőt használjuk. De mivel itt "Dollar" a függvény neve, biztos úgy gondolták, ez helyénvaló lesz. :DDD Az sincs lekezelve benne, mi van, ha negatív számot adok meg. :P
    A lényeg nagyon röviden: ez a függvény mindössze két tizedesre kerekít, semmi mást nem csinál. Ha beadod neki, hogy 10, akkor csinál belőle 10.00-t. Ha úgy hívod meg, hogy mondjuk Dollar(10123.5678), akkor stringként visszaad neked "10123.57"-et. Igazából ennyi.

    Erre viszont ennél jóval értelmesebb, rövidebb és legfőképp JÓL MŰKÖDŐ megoldások is vannak, lásd:
    http://stackoverflow.com/questions/11832914/round-up-to-2-decimal-places-in-javascript

    Előző példával élve:
    var myNumber = 10123.5678;
    var fixedPointNumberAsAString = parseFloat(myNumber).toFixed(2);
    // eredmény: "10123.57"

    VAGY:
    var myNumber = 10123.5678;
    var fixedPointNumber = Math.round(myNumber * 100) / 100;
    // eredmény: 10123.57

    Utóbbi esetben számot fogsz kapni eredményül, nem pedig egy stringet.

Új hozzászólás Aktív témák

Hirdetés