Flash5 ActionScript高級編程指南(2)
發(fā)布時間:2008-08-14 閱讀數(shù): 次 來源:網(wǎng)樂原科技
廢話暫時就先說到這兒,下面我們就來仔細討論一下新的ActionScript的語法和書寫規(guī)范。熟悉此項的大蝦們也請看一下,說不定有你所不知道的呢!
1、腳本構(gòu)成
和C++語言一樣,F(xiàn)lash腳本也是由對象和函數(shù)構(gòu)成的,只不過FAS里的“對象”實際上是影片片段而已(FAS本身的對象含義不象C++中的對象,倒更象是結(jié)構(gòu)體,因為它沒有真正意義上的成員函數(shù),此點我們以后細說)。但它們之間又有本質(zhì)區(qū)別。
首先,C++中的對象是由類實例化得來的,類可以被繼承;而FAS中沒有類的概念,所有的影片片段都是現(xiàn)成的,最多只能用attachMovie來動態(tài)生成一個非現(xiàn)成的影片片段,或用duplicateMovieClip來復制一個已有的影片片段。
其次,C++中成員函數(shù)定義在類聲明里,可以被重載,且沒有先后順序;而FAS中所有的函數(shù)都定義在某個特定的影片片段中,這也就是說,如果定義函數(shù)的那個影格未被播放,函數(shù)就不存在;另外FAS中的函數(shù)不能被重載,只能被覆蓋,系統(tǒng)始終只保留最近被執(zhí)行的腳本中的函數(shù)定義。比如:
function myFunction(a) {
trace("1");
}
function myFunction(a,b) {
trace("2");
}
myFunction(1);
輸出的是2而不是1。
第三,F(xiàn)AS中的影片片段全都是嵌套的,有著深厚的層次關系,只要寫明其路徑,就能直接調(diào)用任何影片片段的成員函數(shù)或變量等;而C++中雖然也有對象的嵌套,但只有外層的對象可以直接調(diào)用內(nèi)層對象的公有成員。
2、基本元素
Flash腳本的基本元素有:變量、數(shù)組、對象、影片片段、影片片段)屬性和函數(shù)。其中數(shù)組(一種特殊的對象)、對象(包括一些預定義對象,如Math)和自定義函數(shù)是Flash5中新增的內(nèi)容。另外,老版本中的一些指令,象:
setPropery (target,property,value);
等,我們現(xiàn)在也把它們稱為函數(shù)。這樣一來,其余就只剩下為數(shù)不多的一些關鍵詞了,下面一一列出:
code:-------------------------------------------------------------------------------- #include "..." var
new delete
if...else... ifFrameLoaded(...)...
for(...)... for(...in...)...
do...while(...) while(...)...
break continue
tellTarget(...)... with(...)...
function ...(...){...} return
on(...){...} onClipEvent(...){...}
--------------------------------------------------------------------------------
其中寫明要{}的必須加上{},其他如if等在子過程只有一條語句時可省略{}。具體應用放到以后細講。