如何在ActionScript 2
中将数字值固定为2个小数点?
ActionScript 3
的toFixed()对我不起作用。
e.g:
1 => 1.00
答案 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