-->
www.riahome.cn
" />
【數字的不同進製之間的轉換】
parseint(str:string, radix:uint = 0):number 返回十進位制的數,引數radix表示要分析的數字的基數.如果省略radix,就預設為10,除非字串的開頭是"0x","0x"或"0":
trace(parseint("0x12")); //設定radix為16,輸出:18
trace(parseint("017")); //設定radix為8,輸出:15
或者使用number,uint和int物件的tostring(radix)方法.
【使用math.round()對乙個數取整,四捨五入】
math.round()
trace(math.round(204.499)); //輸出:204
trace(math.round(401.5)); //輸出:402
【使用math.floor()對乙個數向下取整,就是只要整數部分而不理會小數分】
trace(math.floor(204.99)); //輸出:204
【使用math.ceil()對乙個數向上取整,只要小數部分不為零,整數部分就加1】
trace(math.ceil(401.01)); //輸出:402
【產生乙個隨機數】
使用math.random()產生乙個偽隨機數n,其中 0 <= n < 1
【把數字取至最近的小數點位,即指定精確度】
1. 決定你要取的數字的小數點位數:例如,如果你想把90.337取成90.34,就表示你要取到兩位小數點位,也就是說你想取至最近的0.01;
2. 讓輸入值除以步驟1所選的數字(此例為0.01);
3. 使用math.round()把步驟2所計得的值取成最近的整數;
4. 把步驟3所得的結果乘以步驟2用於除法的那個值.
例如,要把90.337取成兩個小數點位數,可以使用:
trace(math.round(90.337/0.01)*0.01); //輸出:90.34
【把數字取成乙個整數的最接近倍數值】
例1,這樣會把92.5取成5的最近倍數值:
trace(math.round(92.5/5)*5); //輸出:95
例2,這樣會把92.5取成10的最近倍數值:
trace(math.round(92.5/10)*10); //輸出:90
【在指定數值範圍內獲得隨機數】
//可取範圍:[min, max]
private function randrange(min:number, max:number):number
應用例子:
模擬投銀幣,即希望得到隨機布林值(true 或 false): randrange(0, 1);
模擬投骰子,即希望得到隨機六個值: randrange(1, 6);
為避免被快取而需要產生乙個獨一無二的數字追加在url尾端,通常最佳方法是取得當前毫秒數.
【弧度(radian)與度數(degree)之間的轉換】
從弧度轉為度數: degrees = radians * 180 / math.pi
從度數轉為弧度: radians = degrees * math.pi / 180
【計算兩點之間的距離】
勾股定理: c2 = a2 + b2
假設有兩個影片剪輯mc1和mc2,則它們兩點間的距離c為:
var c:number = math.sqrt(math.pow(mc1.x - mc2.x, 2) + math.pow(mc1.y - mc2.y, 2));
【模擬圓周運動】
已知圓心o(x0, y0),半徑r和弧度angle,求圓上任意一點p(x, y)的座標:
x = x0 + (math.cos(angle) * r);
y = y0 + (math.sin(angle) * r);
注意:舞台的x軸正方向水平向右,y軸正方向垂直向下.
【模擬橢圓運動】
已知圓心o(x0, y0),長軸a,短軸b以及弧度angle,求圓上任意一點p(x, y)的座標:
x = x0 + (math.cos(angle) * a);
y = y0 + (math.sin(angle) * b);
本文**:http://hi.baidu.com/honfei/blog/item/df5d1e945a7b441bd31b7045.html
關於as3效率的優化
1.a b 要比 a a b 快,同樣,自增a 也比a a 1快,不過自減a 不是比a a 1快。2.在做除以2操作時,乘法比除法快,位運算更快.但是不要位運算來操作number型別的變數,因為它會將number型別的數值轉為整數型別。for int a b 1 faster than a b 5 ...
AS3的百條常用知識收藏
確保類是絕不會有子類,使用final final public class example super關鍵字的使用 super 父類的建構函式,只能在類例項建構函式內部使用 super.propertyname 呼叫父類的屬性,屬性需要宣告為public或protected super.method...
關於AS3中的深度複製
關於as3中的深度複製 url 參見 url 只能複製object屬性,或者類屬性,不能複製類方法。例如 color 0000ff class color a var a a new a 這時候轉殖乙個a例項 color 0000ff trace color cn.snowkit.utils.cob...