如何在ActionScript 2中修复2个小数点

时间:2013-08-16 10:03:04

标签: format actionscript-2 decimal-point

如何在ActionScript 2中将数字值固定为2个小数点?

ActionScript 3的toFixed()对我不起作用。

e.g:

1 => 1.00

3 个答案:

答案 0 :(得分:2)

您的函数中有一个小错误:如果请求零位小数,它将返回一个Number,而在所有其他情况下,则返回一个String。这是一个始终返回字符串的版本。它使用类型输入,使查找此类问题变得容易:

toggle()

答案 1 :(得分:0)

事实证明,使用此功能可以实现:

//format a number into specified number of decimals
function formatDecimals(num, digits) {
    //if no decimal places needed, we're done
    if (digits <= 0) {
        return Math.round(num);
    }
    //round the number to specified decimals
    var tenToPower = Math.pow(10, digits);
    var cropped = String(Math.round(num * tenToPower) / tenToPower);
    //add decimal point if missing
    if (cropped.indexOf(".") == -1) {
        cropped += ".0";
    }
    //finally, force correct number of zeroes; add some if necessary
    var halves = cropped.split("."); //grab numbers to the right of the decimal
    //compare digits in right half of string to digits wanted
    var zerosNeeded = digits - halves[1].length; //number of zeros to add
    for (var i=1; i <= zerosNeeded; i++) {
        cropped += "0";
    }
    return(cropped);
}

答案 2 :(得分:0)

乘以100个 内部 int()函数。 除以100个 外部 int()函数。

例如

on (release) {
    myValue = 10500/110.8;
}

= 94.7653429602888

on (release) {
    myValue = int((10500/110.8)*100)/100;
}

= 94.76