Flash Actionscript 優(yōu)化指南
互聯(lián)網(wǎng) 發(fā)布時間:2008-10-06 01:25:37 作者:佚名
我要評論
第一章 AS3的一些優(yōu)化計算方法
用乘法來代替除法(當(dāng)除數(shù)可轉(zhuǎn)化為有限數(shù)的時候)。比如var n:Number = value * 0.5;要比var n:Number = value / 2;快。但差別并不是很大。只有在需要大量計算情況下,比如3D引擎中差別才比較明顯。
用位運算代替除2或乘2。比如10>
高級優(yōu)化:
1) for循環(huán) 和 while循環(huán)
用while循環(huán)將會得到比for循環(huán)更好的效率。然而,從數(shù)組中讀取數(shù)據(jù),用for in循環(huán)式最好的選擇!
所以我們不推薦使用:
for (var i=0; i < 1000; i )
{
//進(jìn)行某些操作
}而推薦使用
var i=-1
while ( i < 1000)
{
//進(jìn)行某些操作
}
2) 從數(shù)組中讀取數(shù)據(jù)
我們通過測試發(fā)現(xiàn),for in循環(huán)的效率大大高于其他的循環(huán)方式。參看:
arr = []
MAX = 5000
//數(shù)組賦值
for (i=0; i < MAX; i )
{
arr[i] = i
}
var item = null
// For 循環(huán)
for (var i=0; i < MAX; i )
{
item = arr[i]
}
// For 循環(huán)
for (var i in arr)
{
item = arr[i]
}
// While 循環(huán)
i = -1
while( i < MAX)
{
item = arr[i]
}
3) 向數(shù)組中寫入數(shù)據(jù)(while , for)可以看到while循環(huán)稍占優(yōu)勢。
4) _global(全局)變量同Timeline(時間軸)變量
我們猜測采用全局變量能提高變量調(diào)用速度,然而效果并不像預(yù)計的那樣明顯。
5) 單行、多行變量賦值
我們發(fā)現(xiàn)單行變量賦值效率大大高于多行。比如:
a = 0
b = 0
c = 0
d = 100
e = 100
效率就不如:
a = b = c = 0
d = e = 100
6) 變量名尋址
這個測試反映了變量名的預(yù)尋址是非常重要的,尤其是在循環(huán)的時候,一定要先給丁一個指向。這樣大大節(jié)約了尋址時間。
比如:
var num = null
t = getTimer()
for (var i=0; i < MAX; i )
{
num = Math.floor(MAX) - Math.ceil(MAX)
}
t1.text = "Always lookup: " (getTimer() - t)
就不如:
t = getTimer()
var floor = Math.floor
var ceil = Math.ceil
for (var i=0; i < MAX; i )
{
num = floor(MAX) - ceil(MAX)
}
相關(guān)文章

flash cs6鼠標(biāo)跟隨效果實現(xiàn)代碼分享
flash cs6想要實現(xiàn)鼠標(biāo)跟隨效果?該怎么制作呢?今天我們就來看看使用as2.0實現(xiàn)鼠標(biāo)跟隨效果的教程,需要的朋友可以參考下2019-05-19
Flash cs6怎么使用代碼輸入中英文文本?Flash cs6中可以使用文字工具直接輸入文本,也可以使用代碼來輸入文本,該怎么使用代碼輸入文本呢?請看下文詳細(xì)的教程,需要的朋友2018-03-11
flash as3.0抽象類怎么定義? as3.0中有很多抽象類,該怎么定義抽象類和抽象方法呢?下面我們就來看看簡單的例子,需要的朋友可以參考下http://www.fzitv.net/softs/408402.2018-02-28
flash cs6中怎么使用ActionScript3.0?
flash cs6中怎么使用ActionScript3.0?flash cs6中想要使用ActionScript3.0功能,該怎么使用呢?下面我們就來看看詳細(xì)的教程,需要的朋友可以參考下2018-01-25
Flash中怎么實現(xiàn)鼠標(biāo)點擊決定圖像位置?
本教程給大家分享一個Flash小教程,教大家在Flash CS6中怎么實現(xiàn)鼠標(biāo)點擊決定圖像位置?方法很簡單,感興趣的朋友歡迎前來一起分享學(xué)習(xí)2018-01-12
本教程教腳本之家的ActionScript教程學(xué)習(xí)者在Flash中如何用代碼將圖片放在自己想要的舞臺位置,教程講解的詳細(xì),感興趣的朋友歡迎前來分享學(xué)習(xí)2017-11-20
在Flash CS6中使用with函數(shù)繪制背景圖教程
本教程教腳本之家的ActionScript教程學(xué)習(xí)者如何在Flash CS6中使用with函數(shù)繪制背景圖?教程一步步講解的挺詳細(xì),方法也不難,非常適合Flash新手入門學(xué)習(xí)2017-11-18
Flash怎么設(shè)置元件坐標(biāo)?flash使用代碼設(shè)置元件的坐標(biāo)的教程
Flash怎么設(shè)置元件坐標(biāo)?flash中導(dǎo)如的元件需要添加坐標(biāo),該怎么定位元件坐標(biāo)呢?下面我們就來看看flash使用代碼設(shè)置元件的坐標(biāo)的教程,需要的朋友可以參考下2017-10-11
Flash怎么制作來回?fù)u擺的花朵的動畫?Flash中想要給花朵制作一段搖擺的動畫效果,該怎么制作呢?下面我們就來看看詳細(xì)的教程,很簡單,需要的朋友可以參考下2017-05-23
Flash怎么制作流動七彩色的文字?想要讓文字動起來,該怎么使用flash給文字制作一個流動七彩色的動畫呢?下面我們就來看看詳細(xì)的教程,需要的朋友可以參考下2017-04-23











