




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、AS30編程語言基礎(chǔ) 第2章 AS3.0編程語言基礎(chǔ) 語法、數(shù)據(jù)、變量、運(yùn)算符和語句構(gòu)成了編程語 言的基礎(chǔ)。本章將通過大量的測試代碼。詳細(xì)的 介紹ActionScript 3.0中的語法、數(shù)據(jù)類型,變 量以及運(yùn)算符。通過本章的學(xué)習(xí),為以后的面向 對象編程將打下一個堅(jiān)實(shí)的基礎(chǔ)。 AS30編程語言基礎(chǔ) 2.1 AS3.0語法 任何一門編程語言在編寫代碼時都必須遵循一定 的規(guī)則,這個規(guī)則就是語法。本節(jié)將著重介紹從 ActionScript 2.0開始使用的點(diǎn)語法和區(qū)分大小 寫,了解編程常用的標(biāo)點(diǎn)符號的使用,以及程序 注釋的使用方法。 AS30編程語言基礎(chǔ) 2.1.1 點(diǎn)語法 Flash中使用點(diǎn)(.)
2、運(yùn)算符來訪問對象的屬性和 方法,點(diǎn)運(yùn)算符主要用于下面的幾個方面。 1可以采用對象后面跟點(diǎn)運(yùn)算符的屬性名稱(方 法)名稱來引用對象的屬性(方法)。 2可以采用點(diǎn)運(yùn)算符表示包路徑。 3可以使用點(diǎn)運(yùn)算符描述顯示對象的路徑。 AS30編程語言基礎(chǔ) 2.1.2 標(biāo)點(diǎn)符號使用 在Flash中有多種標(biāo)點(diǎn)符號都很常用,分別為:分號(;)、逗號(,)、冒號(:)、 小括號(())、中括號()和大括號()。這些標(biāo)點(diǎn)符號在Flash中都有各自不 同的作用,可以幫助定義數(shù)據(jù)類型,終止語句或者構(gòu)建ActionScript代碼塊。 1分號(;):ActionScript語句用分號(;)字符表示語句結(jié)束。 2逗號(,):逗
3、號的作用主要用于分割參數(shù),比如函數(shù)的參數(shù),方法的參數(shù)等等。 3冒號(:):冒號的作用主要用于為變量指定數(shù)據(jù)類型。要為一個變量指明數(shù)據(jù)類 型,需要使用var關(guān)鍵字和后冒號法為其指定。 4小括號(()):小括號在ActionScript3.0中有三種用途。 首先,在數(shù)學(xué)運(yùn)算方面,可以用來改變表達(dá)式的運(yùn)算順序。小括號內(nèi)的數(shù)學(xué)表達(dá)式優(yōu) 先運(yùn)算。 其次,在表達(dá)式運(yùn)算方面,可以結(jié)合使用小括號和逗號運(yùn)算符,來優(yōu)先計(jì)算一系列表 達(dá)式的結(jié)果并返回最后一個表達(dá)式的結(jié)果。 5中括號():中括號主要用于數(shù)組的定義和訪問, 6大括號():大括號主要用于編程語言程序控制,函數(shù)和類中。 在構(gòu)成控制結(jié)構(gòu)的每個語句前后添加大括
4、號(例如if.else 或for),即使該控制結(jié) 構(gòu)只包含一個語句。 AS30編程語言基礎(chǔ) 2.1.3 注釋 注釋是使用一些簡單易懂的語言對代碼進(jìn)行簡單 的解釋的方法。注釋語句在編譯過程中并不會進(jìn) 行求值運(yùn)算??梢杂米⑨寔砻枋龃a的作用,或 者返回到文檔中的數(shù)據(jù)。注釋也可以幫助記憶編 程的原理,并有助于其他人的閱讀。若代碼中有 些內(nèi)容閱讀起來含義大不明顯,應(yīng)該對其添加注 釋。 ActionScript3.0中的注釋語句有兩種:單行注釋 和多行注釋。 單行注釋以兩個單斜杠(/)開始,之后的該行 內(nèi)容均為注釋。比如下面的代碼: trace(1234)/輸出:1234 AS30編程語言基礎(chǔ) 2.1.
5、4 關(guān)鍵字和保留字 保留字,從字面上就很容易知道這是保留給 ActionScript 3.0語言使用的英文單詞。因而不 能使用這些單詞作為變量、實(shí)例、類名稱等。如 果在代碼中使用了這些單詞,編譯器會報錯。 ActionScript3.0中的保留字分為3類:詞匯關(guān)鍵 字、語法關(guān)鍵字和供將來使用的保留字。 1詞匯關(guān)鍵字 2句法關(guān)鍵字 3供將來使用的保留字。 AS30編程語言基礎(chǔ) 2.2 變量和常量 變量和常量,都是為了儲存數(shù)據(jù)而創(chuàng)建的。變量 和常量就像是一個容器,用于容納各種不同類型 的數(shù)據(jù)。當(dāng)然對變量進(jìn)行操作,變量的數(shù)據(jù)就會 發(fā)生改變,而常量則不會。 變量必須要先聲明后使用,否則編譯器就會報錯。
6、 道理很簡單,比如現(xiàn)在要去喝水,那么你首先要 有一個杯子,否則怎么樣去裝水呢?要聲明變量 的原因與此相同。 AS30編程語言基礎(chǔ) 2.2.1 聲明變量的語法 在ActionScript 3.0中,使用var關(guān)鍵字來聲明變 量。格式如下所示。 var 變量名:數(shù)據(jù)類型; var 變量名:數(shù)據(jù)類型=值; 變量名加冒號加數(shù)據(jù)類型就是聲明的變量的基本 格式。要聲明一個初始值,需要加上一個等號并 在其后輸入響應(yīng)的值。但值的類型必須要和前面 的數(shù)據(jù)類型一致。 AS30編程語言基礎(chǔ) 2.2.2 變量的命名規(guī)則 變量的命名既是任意的,又是有規(guī)則,有目的的。隨手牽 來、雜亂無章的命名在Flash里面容易引起代碼
7、的混亂,也 不容易進(jìn)行維護(hù)操作。 變量的命名首先要遵循下面的幾條原則: 它必須是一個標(biāo)識符。它的第一個字符必須是字母、下劃 線(_)或美元記號($)。其后的字符必須是字母、數(shù)字、 下劃線或美元記號。注意:不能使用數(shù)字作為變量名稱的 第一個字母。 它不能是關(guān)鍵字或動作腳本文本,例如true、false、null 或undefined。特別不能使用ActionScript的保留字,否則 編譯器會報錯。 它在其范圍內(nèi)必須是惟一的,不能重復(fù)定義變量。 AS30編程語言基礎(chǔ) 2.2.3 變量的作用域 變量的作用域指可以使用或者引用該變量的范圍,通常變 量按照其作用域的不同可以分為全局變量和局部變量。全
8、局變量指在函數(shù)或者類之外定義的變量,而在類或者函數(shù) 之內(nèi)定義的變量為局部變量。 全局變量在代碼的任何地方都可以訪問,所以在函數(shù)之外 聲明的變量同樣可以訪問,如下面的代碼,函數(shù)Test()外 聲明的變量i在函數(shù)體內(nèi)同樣可以訪問。 var i:int=1; /定義Test函數(shù) function Test() trace(i); Test()/輸出:1 AS30編程語言基礎(chǔ) 2.2.4 變量的默認(rèn)值 變量的默認(rèn)值是指變量在沒有賦值之前的值。對于 ActionScript3.0的數(shù)據(jù)類型來說,都有各自的默認(rèn)值,下 面使用代碼來測試一下: 通過上面的代碼輸出,已經(jīng)可以得到這些數(shù)據(jù)類型變量的 默認(rèn)值,分別
9、為: Boolean型變量的默認(rèn)值是:false。 int型變量的默認(rèn)值是:0。 Number型變量的默認(rèn)值是:NaN。 Object型變量的默認(rèn)值是:null。 String型變量的默認(rèn)值是:null。 uint型變量的默認(rèn)值是:0。 *型變量的默認(rèn)值是:undefined。 AS30編程語言基礎(chǔ) 2.2.5 使用const聲明常量 Action Script 3.0中增加了一個const關(guān)鍵字, 用于聲明常量。常量是指具有無法改變的固定值 的屬性。比如Math.PI就是一個常量。常量可以看 做一種特殊的變量,不過這種變量不能賦值,不 能更改而已。 使用用const聲明常量的語法格式和var
10、聲明的變 量的格式一樣: const 常量名:數(shù)據(jù)類型; const 常量名:數(shù)據(jù)類型=值; 下面聲明常量的代碼: const g:Number=9.8; AS30編程語言基礎(chǔ) 2.3 基礎(chǔ)數(shù)據(jù)類型 和其它的面向?qū)ο蟮木幊痰臄?shù)據(jù)類型一樣,ActionScript3.0的數(shù) 據(jù)類型同樣分為兩種,具體劃分方式如下所示。 基元型數(shù)據(jù)類型:Boolean、int、Number、String和uint。 復(fù)雜型數(shù)據(jù)類型:Array、Date、Error、Function、RegExp、XML 和XMLList。 一般來說,基元值的處理速度通常比復(fù)雜值的處理速度要快。 基元型數(shù)據(jù)和復(fù)雜型數(shù)據(jù)類型的最大的區(qū)
11、別是:基元型是值對類 型數(shù)據(jù),而復(fù)雜型是引用類型數(shù)據(jù)。值對類型直接儲存數(shù)據(jù),使 用它為另一個的變量賦值之后,若另一個變量改變,并不影響原 變量的值。引用類型指向要操作的對象,另一個變量引用這個變 量之后,若另一變量發(fā)生改變,原有的變量跟著也要發(fā)生改變。 基元型數(shù)據(jù)類型都是值對類型數(shù)據(jù),復(fù)雜型數(shù)據(jù)都是引用類型數(shù) 據(jù)。 另外,最明顯的一個區(qū)別是,如果數(shù)據(jù)類型能夠使用new關(guān)鍵字創(chuàng) 建,那么它一定是引用型數(shù)據(jù)變量。 AS30編程語言基礎(chǔ) 2.3.1 基礎(chǔ)數(shù)據(jù)類型說明 本節(jié)通過大量的測試代碼,來說明各種不同的數(shù) 據(jù)類型的用法和使用中的注意事項(xiàng)。 1Boolean 數(shù)據(jù)類型 2數(shù)字:int、uint和N
12、umber 3String 數(shù)據(jù)類型 4Array數(shù)組類型 5Object數(shù)據(jù)類型 6Object數(shù)據(jù)類型 AS30編程語言基礎(chǔ) 2.3.2 數(shù)據(jù)類型檢查 任何編程代碼在執(zhí)行前或者執(zhí)行時都要執(zhí)行數(shù)據(jù)類型的檢 查,以避免出現(xiàn)數(shù)據(jù)錯誤。ActionScript 3.0是動態(tài)類型 的語言,它默認(rèn)的是執(zhí)行時進(jìn)行數(shù)據(jù)類型檢查。同時它也 在適合使用“嚴(yán)格模式”的編譯器在編譯時執(zhí)行數(shù)據(jù)類型 檢查。在使用嚴(yán)格模式的編譯器中,數(shù)據(jù)類型檢查既可以 在執(zhí)行前執(zhí)行編譯器檢查,也可以在運(yùn)行時執(zhí)行運(yùn)行時檢 查。在標(biāo)準(zhǔn)模式下,只支持默認(rèn)的執(zhí)行時數(shù)據(jù)類型檢查。 比如說在程序編寫過程中,要明確傳遞變量值的類型和接 受參數(shù)類型相
13、同。比如下面的代碼: function func(mystr:String) trace(mystr); var str:String=welcome you; func(str); AS30編程語言基礎(chǔ) 2.3.3 隱式數(shù)據(jù)類型轉(zhuǎn)換 數(shù)據(jù)類型轉(zhuǎn)換是指把某個值轉(zhuǎn)換為其它類型的數(shù)據(jù)。類型 的轉(zhuǎn)換有兩種方式:隱式轉(zhuǎn)換和顯式轉(zhuǎn)換。隱式轉(zhuǎn)換又稱 為強(qiáng)制轉(zhuǎn)換,由Flash Player在運(yùn)行時執(zhí)行。比如將2賦值 給Boolean數(shù)據(jù)類型的變量,則Flash Player會先將2轉(zhuǎn)換 為布爾值true,然后再將其賦值給該變量。 隱式轉(zhuǎn)換可以稱為自動轉(zhuǎn)換,是在程序編譯的過程中由程 序本身來進(jìn)行數(shù)據(jù)類型的轉(zhuǎn)換
14、。它主要發(fā)生在許多上下文 中。主要分為以下幾種情況: 在賦值語句中。 在將值作為函數(shù)的參數(shù)傳遞時。 在從函數(shù)中返回值時。 在使用某些運(yùn)算符(如加法運(yùn)算符(+)的表達(dá)式中。 AS30編程語言基礎(chǔ) 2.3.4 顯式數(shù)據(jù)類型轉(zhuǎn)換 顯式轉(zhuǎn)換是指代碼若指示編譯器將一個數(shù)據(jù)類型 的變量視為屬于另一個類型的變量時執(zhí)行該轉(zhuǎn)換。 該轉(zhuǎn)換主要利用數(shù)據(jù)類型的對象名稱來轉(zhuǎn)換。常 用的數(shù)據(jù)轉(zhuǎn)換均為此方式。 顯示轉(zhuǎn)換是利用數(shù)據(jù)類型的對象名稱來轉(zhuǎn)換,常 見的主要有下面的幾種。 1轉(zhuǎn)換為 int、uint 和 Number 轉(zhuǎn)換為Boolean 轉(zhuǎn)換為 String AS30編程語言基礎(chǔ) 2.3.5 無類型說明符 Actio
15、nScript 3.0引入了三種特殊類型的無類型說明符:*, void和null。 使用*類型用于指定屬性是無類型的。使用*作為類型注釋 與不使用類型注釋等效。從無類型屬性中讀取的表達(dá)式可 視為無類型表達(dá)式。該說明符主要用于兩個方面:將數(shù)據(jù) 類型檢查延緩到運(yùn)行時和將undefined存儲在屬性中。 void用于說明定函數(shù)無法返回任何值。void類型只有一個 值:undefined。該說明符僅用于聲明函數(shù)的返回類型。 null是一個沒有值的特殊數(shù)據(jù)類型。Null數(shù)據(jù)類型只有一 個值:null。Null數(shù)據(jù)類型的不與任何類相關(guān)聯(lián)。不可將 Null數(shù)據(jù)類型用作屬性的類型注釋。 AS30編程語言基礎(chǔ)
16、2.4 運(yùn)算符與表達(dá)式 學(xué)習(xí)一門編程語言,首先要弄清楚的就是如何對 其中的數(shù)據(jù)進(jìn)行運(yùn)算。使用表達(dá)式來表達(dá)想要達(dá) 到的效果,使用運(yùn)算符來進(jìn)行相關(guān)的運(yùn)算,這就 是數(shù)據(jù)運(yùn)算的關(guān)鍵。本節(jié)主要介紹常用的運(yùn)算符 的用法。 AS30編程語言基礎(chǔ) 2.4.1 運(yùn)算符和表達(dá)式基礎(chǔ)知識 運(yùn)算符是可以通過給出的一個或者多個值來產(chǎn)生 另一個值的東西??梢哉f它是一種特殊的函數(shù)。 其中的值稱為“操作數(shù)”,具體包括字面值、變 量和表達(dá)式。 運(yùn)算符分為三種:一元運(yùn)算符、二元運(yùn)算符、三 元運(yùn)算符。一元運(yùn)算符只運(yùn)算一個值,例如遞增 運(yùn)算符+;二元運(yùn)算符比較常見,ActionScript 3.0中大部分運(yùn)算符都是二元運(yùn)算符;三元運(yùn)
17、算符 具有三個操作數(shù),例如條件運(yùn)算符(?:)具有3個 操作數(shù)。 AS30編程語言基礎(chǔ) 2.4.2 賦值運(yùn)算符 賦值運(yùn)算符有兩個操作數(shù),它根據(jù)一個操作數(shù)的 值對另一個操作數(shù)進(jìn)行賦值操作。ActionScript 中的賦值運(yùn)算有12個 , 賦值運(yùn)算符 運(yùn)算符執(zhí)行的運(yùn)算 = 賦值 *= 乘法賦值 /= 除法賦值 %= 求模賦值 += 加法賦值 -= 減法賦值 = 按位向右移位賦值 = 按位無符號向右移位賦值 var b:int=2; var c:int=a+b; var d:int=a-b; var e:int=a*b; var f:int=a/b; AS30編程語言基礎(chǔ) 2.4.4 算術(shù)賦值運(yùn)算符
18、 算術(shù)賦值運(yùn)算符和算術(shù)運(yùn)算符對應(yīng),共有5個,分 別為+=、-=、*=、/=和%=。和賦值運(yùn)算符一樣, 運(yùn)算符的左邊只能是變量。右側(cè)是一個要值、變 量或表達(dá)式。 這種類型的賦值運(yùn)算符有時也叫做自賦值運(yùn)算符, 就是利用自己進(jìn)行運(yùn)算并賦值給自己。比如下面 的代碼語句: a+=1; 其要表達(dá)的運(yùn)算過程就是下面的的代碼要執(zhí)行的 運(yùn)算過程。 a=a+1; AS30編程語言基礎(chǔ) 2.4.5 關(guān)系運(yùn)算符 關(guān)系運(yùn)算符用于比較兩個操作數(shù)的值的大小關(guān)系。常見的 關(guān)系運(yùn)算符一般分為兩類:一類用于判斷大小關(guān)系,一類 用于判斷相等關(guān)系。其具體情況如下: 判斷大小關(guān)系:大于運(yùn)算符、=大于等于 運(yùn)算符、=小于等于運(yùn)算符。 判斷相等關(guān)系:等于運(yùn)算符、!=不等于運(yùn)算符、=嚴(yán) 格等于運(yùn)算符、!=嚴(yán)格不等于運(yùn)算符。 關(guān)系運(yùn)算符左右兩側(cè)可以是數(shù)值、變量或者表達(dá)式。關(guān)系 表達(dá)式的結(jié)果是Boolean值,flase或者true 。 1判斷大小關(guān)系的運(yùn)算符 2判斷相等關(guān)系的運(yùn)算符: AS30編程語言基礎(chǔ) 2.4.6 邏輯運(yùn)算符 邏輯運(yùn)算符有3個,分別為: var b:int=34; trace(a/輸出為:2 AS30編程語言基礎(chǔ) 2.4.8 遞加遞減
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年煙氣脫硫設(shè)備項(xiàng)目規(guī)劃申請報告
- 農(nóng)業(yè)資源開發(fā)使用權(quán)利授權(quán)協(xié)議
- 2025年單證員職業(yè)資格考試試卷:單證員職業(yè)資格考試備考指導(dǎo)
- 2025年保健按摩師(初級)理論知識試卷難點(diǎn)解析與備考指南
- 2025年氣霧劑機(jī)械項(xiàng)目立項(xiàng)申請報告
- 2025年美容師(中級)職業(yè)技能鑒定實(shí)操試卷-美容師實(shí)操技能考核創(chuàng)新與突破篇
- 2025年麥片項(xiàng)目規(guī)劃申請報告
- 2025年勞動保障協(xié)理員(中級)考試試卷:勞動保障政策執(zhí)行與社會保障改革路徑創(chuàng)新
- 個人收入及財務(wù)狀況年度證明(6篇)
- 2025年專升本藝術(shù)概論考試模擬試卷:藝術(shù)創(chuàng)作分析在當(dāng)代藝術(shù)研究中的應(yīng)用
- 第二屆全國化工和醫(yī)藥行業(yè)安全生產(chǎn)線上知識競賽題庫(共150題)
- JJF1033-2023計(jì)量標(biāo)準(zhǔn)考核規(guī)范
- 2024年吉林長春市中考地理試卷真題(含答案解析)
- 河北傳統(tǒng)醫(yī)學(xué)師承關(guān)系合同書
- 離婚協(xié)議書(完整版)WORDx(二篇)
- GB/T 6414-1999鑄件尺寸公差與機(jī)械加工余量
- 變電站新建工程土方開挖專項(xiàng)施工方案
- 廣東話粵語姓名拼音大全
- 護(hù)理查對制度pptPPT課件
- FE系列電磁流量計(jì)說明書(含設(shè)定參數(shù))(1)
- 基于PLC的打包機(jī)控制系統(tǒng)
評論
0/150
提交評論