Flex4 数字处理
1、按进制输出
?
var num:Number = 255;for (var i:int = 2; i <= 16; i++)trace(i+"进制:" + num.toString(i));
?
?结果:
?
2进制:11111111
3进制:100110
4进制:3333
5进制:2010
6进制:1103
7进制:513
8进制:377
9进制:313
10进制:255
11进制:212
12进制:193
13进制:168
14进制:143
15进制:120
16进制:ff
?
?
2、数字字符串转数字
parseInt("数字字符串", 进制数);
parseFloat("数字字符串")
?
var str:String = "10110011";trace(parseInt(str, 2));trace(parseFloat(str));
3、四舍五入
var num:Number = 123.456;trace(Math.round(num));
??结果:123
?
4、四舍五入保留小数(保留2位,先乘以100四舍五入,再除以100)
?
var num:Number = 123.456;trace(Math.round(num * 100)/100);
?
?结果:123.46
5、取整var num:Number = 123.456;trace(Math.floor(num)); // 舍去小数部分trace(int(num)); // 强制转换成整数,自动舍去小数部分trace(Math.ceil(num)); // 有小数就进位结果:
?
123 // floor
123 // int
124 // ceil
?
6、格式化输出
?
var nf:NumberFormatter = new NumberFormatter();nf.fractionalDigits = 3; // 小数位数trace(nf.format(1234567));
?
?结果:1,234,567.000
7、格式化货币
?
var cf:CurrencyFormatter = new CurrencyFormatter();cf.fractionalDigits = 3;cf.useCurrencySymbol = true;cf.currencySymbol = "$";trace(cf.format(1234567));?结果:$1,234,567.000
?
?
8、随机数
?
trace(Math.random());
?
?结果:0.9977383892983198
?