Avatar billede dsborring Nybegynder
03. juni 2007 - 20:35 Der er 2 kommentarer og
1 løsning

ActionScript 3.0 - DK komma og tusindtalsætning

Hej - jeg søger en oversættelse eller en ny version af en funktion, der kan 'oversætte' talformatering i Flash 9.0 - ActionScript 3.0

Dette er den gamle metode, som så ikke virker i det nye ActionScript 3.0:

//DK komma og tusindtalssætning------
Math.convertToKroner = function(tal) {
    var integer = Math.floor(tal).toString();
    var decimals = Math.round((tal-integer)*100)/100;
    var twoDecimals = (decimals+0.0001).toString().substring(2,4);
    var i = integer.length;
    var j = -1, thousands = "";
    while((i-=3) > 0) {
        thousands = (i > 0 ? "." : "")+integer.substring(i,i+3)+thousands;   
    }
    return integer.substring(0,i+3)+thousands+","+twoDecimals;
}
//slut-------------------------------


På forhånd tak!
David
Avatar billede maqhem Nybegynder
03. juni 2007 - 23:49 #1
Den kan meget nemt laves om, men jeg vil nu foreslå, du kigger lidt på din kode, for den kan skrives meget smartere og langt bedre optimeret - og så er din kode slet ikke up-to-date. Jeg har lavet en funktionel kode, som kan det samme som din, i AS3 (og virker også i AS2):

function convertToKroner(Num:Number):String {
    var tempNum:String = new String(int(Num).toString().substring(0, int(Num).toString().length % 3));
    for(var i:Number = int(Num).toString().length % 3; i < Math.floor(int(Num).toString().length / 3) * 3; i += 3) {
        tempNum += (tempNum != "" ? "." : "") + int(Num).toString().substr(i, 3);
    }
    return tempNum += "," + Math.round(Num * 100).toString().substr(-2, 2);
}

Og den er langt kortere :)
Avatar billede dsborring Nybegynder
05. juni 2007 - 11:30 #2
Hej maqhem

Tak for hurtigt svar! Det spiller bare!

Og ved du måske også, hvor jeg kan finde noget litteratur omkring AS3 - jeg bliver simpelthen nødt til at lære det bedre :-)
Avatar billede maqhem Nybegynder
05. juni 2007 - 15:00 #3
Det ved jeg desværre ikke, men jeg vil foreslå dig at skrive en AS 2-kode, og så bare kommando for kommando, linje for linje oversætte den til AS 3 ved hjælp af http://livedocs.adobe.com/flex/2/langref/migration.html, der fortæller dig alle forskelle ellem AS 2 og AS 3. Men det kræver lige nogle forsøg og en god tolmodighed.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester