Flash ActionScript3.0教程.docx
第1章AcionScript3.0概述ActionScript3.0是针对FIaShPIayer运行时环境的编程语言,它用于处理各种人机交互、数据交互等功能.本章将粗略的介绍ACtionSCriPt语言的发展历史、新增特色、编程环境等内容,以和第一个ActionScript3.0程序。1.1 ActionScript3.0ActionScript3.0是随着AdobeFlashCS3和Flex2.0的推出而同步推出的脚本编程语言。本节将对AetionSCriPt30进行简要的介绍,并通过些具体的实例图片,展示了常见的ACtiOnSCriPt的应用领域。1.1.1 ActionScript3.0介绍ActionScript3.0与ActionScript以前的版本有个本质上的不同。它是一门功能强大、符合业界标准的一门面对对象的编程语言。它在FIaSh编程语言中有若里程碑的作用,是用来开发富应用程序(RlA)的重要语言。ActionScript3.0在用于脚本撰写的国际标准化编程语言ECMASCriPt的基础之上,对该语言做了进一步的改进,可为开发人员供应用于丰富Intemet应用程序(RlA)的牢靠的编程模型。开发人员可以获得卓越的性能并简化开发过程,便于利用特别困难的应用程序、大的数据集和面对对象的、可重复运用的基本代码。ActionScript3.0在FlaShPIayer9中新的ActionScript虚拟机(AVM2)内执行,可为卜一代RIA带来性能突破。1.1.2 ACtiOnSCriPt3.0能做什么最初在Flash中引入ActionScript,目的是为了实现对Flash影片的播放限制,而ActionScript发展到今口,其已经广泛的应用到了多个领域,能够实现丰富的应用功能。ActionScript3.0最基本的应用与创作工具AdobeFlashCS3结合,创建各种不同的应用特效,实现丰富多彩的动画效果,使FIaSh创建的动画更加人性话,更具有弹性效果。这些基础应用当中,应用最为广泛的就是运用ACtionSCriPt脚本限制的弹性菜单。下面是个弗性的效果,»»CA1.TlMrrO*CK1MCXCHAXOrT11AOMOEgS*廿莱华效服图1.2 ACtionScriPt3.0的新特色AetiQnSCriPt3.0包括二部分:核心语言和FIaShPIayerAPlC核心语言用于定义编程语言的基本结构,比如声明变量,创建表达式限制程序结构和数据类型等。HashPlayerAPI是由系列用于实现特定功能的flashplayer类组成。1.2.1 核心语宫的新特色ActionScript3.0核心语言与ECMAScript标准兼容,井和新改进的一些功能区域进行结合,下面是对一些其开发者便利的地方和用法总结的一些新特点:1 .运行时的异样处理机制2 .运行时类型3 .密封类4 .闭包方法5 .E4X6 .正则表达式7 .命名空间8 .新基元类型8.1.1 FlashPlayerAPI新功能FlashPlayerAPI为增力口FlashPlayer容纳ActionScript语言的实力而引入的一组类和功能。这种功能把ActionScript核心语言和Flash平台之间建立了一座桥梁,大大提高了FIaSh应用程序的实力,并对核心语言起到了重要的补充作用。F面列出一些FlashPlayerAPI功能的新特点:1 .DoM3事务模型2 .显示列表APl1.3 FiaehCS3的动作面板介用FlashCS3中可以运用动作面板、“脚本窗口”或者外部编辑器的创作环境中田间ActionScript代码。本节就来介绍下FlashCS3的动作面板窗口和FlashCS自带的编辑器窗口,并将具体的介绍功能按钮的作用。1.3.1 动作面板概述假如要在FlashCS3中加入ActionScript代码,可以干脆运用动作面板来输入。要打开动作面板,请执行下面的操作:单击【用口I【动作】,或者按F90打开后的动作面板如图所示。下面对图中各部分的名称和作用加以说明。A:脚本窗格,用于输入代码的地方。B:面板菜单,单击后可显示动作面板功能菜单C:动作工具箱,可以通过双击或者拖动的方式将其中的ACtionSCriPt元素添加到脚本窗格中。D:脚本导航器,其有两个功能,一是通过单击其中的项目,可以将与该项目相关的代码显示在脚本窗口中,二是通过双击其中的项目,对该项目的代码进行固定操作。功性同快1.3.2 脚本窗口概述ActionScript3.0是很好的面对对象编程语言,同样FlashCS3也供应了一个很不错的脚本编辑器,这就是FlaSh的脚本窗II。运用脚本窗口可以创建或者导入外部的脚本文件,这些文件可以是ActionScript.FlashCommunication或FlashJavaScript文件。1.3.3 动作面板和脚本窗口的工具介绍在动作面板和脚本舒口的上侧都有一排功能按钮,利用这些功能按钮可以很方面的进行AetiOnSCriPt代码的输入和编写,下面对这些按钮进行具体的说明。:将新项目添加到脚本中按钮,该按钮主要用于显示语言元素,这些元素同时也会显示在“动作”工具箱中。可以利用它来选择要添加到脚本中的项目或者元素名称。:杳我按钮,主要用于杳找并替换脚本中的文本。:插入目标路径按钮(仅限动作面板),可以帮助为脚本中的某个动作设置肯定或相对目标路径。:语法检查按钮,用于检查当前脚本中的语法错误。:自动套用格式按钮,用来调辘脚本的格式以实现正确的编码语法和更好的可读性。:显示代码提示按钮:用于在关闭了自动代码提示时,可运用此按钮来显示正在吃力的代码行的代码提示。:调试选项按钮(仅限动作面板),用于设置和删除断点,以便在调试时可以逐行执行脚本中的每行。折登成对大括号按钮,用于对出现在当前包含插入点的成对大括号或小括号间的代码进行折控。:折桎所选按钮:用于折荏当前所选的代码块。:绽开全部按钮:用于绽开当前脚本中全部折登的代码。:应用块注释按钮,用于将注和标记添加到所选代码块的开头和结尾。:应用行注释按钮,用于在插入点处或所选多行代码中每一行的开头处添加单行注释标记。:删除注释按钮,用于从当前行或当前选择内容的全部行中删除注秣标记。:显示/脸藏1:具箱按钮,用于显示或隐藏“动作”工具箱。:脚本助手按钮(仅限动作面板),其用于打开和关闭“脚本助手”模式。:帮助按钮,用于显示“脚本”侪格中所选ActionScript元素的参考信息C:面板菜单(仅限动作面板),包含适用于动作面板的吩咐和首选参数。1.4 ACtiOnSCriPt3.0的首选参数设置无论是在动作面板还是脚本窗口中编辑ACtionSCriPt代码,都可以通过设置首先参数来配置输入的ActionScript代码的格式。要设置AetionSCriPt3.0的首选参数,须要先打开首选参数窗口。清执行下面的操作:选择【编辑】I【首选参数1.打开首选参数对话框,1.5 具提示样式的代码提示1.6 用菜单样式的代码提示1.7 对对象儡程概述ActionScript3.0是为面对对象编程而打算的一种脚本语言。本节将简洁介绍一下面对对象编程的基本概念。面对对象编程,英文为:ObjeCtOrientedProgramming,简写为OOP,意思为面对对象程序设计,它是一种计算机编程架构.程序(program)是为实现特定目标或者解决特定问题而用计算机语言编写的吩咐序列的集合。它可以是一些高级程序语言开发出来的可以运行的可执行文件,也可以是一些应用软件制作出的可执行文件,比如Flash编译之后的SWF文件。编程是指为实现某种目的或需求,运用各种不同的程序语言进行设计,编写能够实现这些需求的可执行文件。1.8 FlashCS3的第一个"WdmeYouwFlashCS3中有两种写入ActionScript3.0代码的方法:一种是在时间轴的关键帧加入ActionScript代码。另种是在外部写出几个单独的ActionScript类文件,然后在绑定或者导入到Ha文件中来。ACtiOnSCriPt中的类存二种用法:一是和Flash中的库元件进行绑定;二是和Ha文件绑定;三是运用import关键字导入类。ACtionSCriPt3.0开发的程序,举荐文档与代码分别,不举荐把代码写在关键帧上。下面用两种方法来起先第一个"WelcomeYou”程序。1 .在关键帧上加入代码2 .利用文档类制造第一个"WelcomeYou"程序第2章AS3.0儡程语言基破语法、数据、变量、运算符和语句构成r编程语言的基础。本章将通过大城的测试代码。具体的介绍ACtionSCriPt3.0中的语法、数据类型,变量以和运算符。通过本章的学习,为以后的面对对象编程将打下一个坚实的基础。2.1 AS3.0语法任何门编程语言在编写代码时都必需遵循肯定的规则,这个规则就是语法。本节将若重介绍从ActionScript2.0起先运用的点语法和区分大小写,了解编程常用的标点符号的运用,以和程序注郛的运用方法。2.1.1 点语法Flash中运用点(.)运算符来访问对象的属性和方法,点运算符主要用于下面的几个方面。1 .可以采纳对象后面跟点运算符的属性名称(方法)名称来引用对象的属性(方法)。2 .可以采纳点运算符表示包路径。3 .可以运用点运算符描述显示对象的路径。4 .1.2标点符号运用在FIaSh中有多种标点符号都很常用,分别为:分号(;)、一号(,)、冒号(:)、小括号()、中括号(II)和大括号(O)O这些标点符号在FlaSh中都有各自不同的作用,可以帮助定义数据类型,终止语句或者构建ActionScript代码块。1 .分号(;):ACtionSCriPt语句用分号(;)字符表示语句结束。2 .逗号(,):逗号的作用主要用于分割参数,比如函数的参数,方法的参数等等。3 .冒号(:):冒号的作用主要用于为变Gt指定数据类型C要为一个变过指明数据类型,须要运用var关键字和后罚号法为其指定。4 .小括号(O):小括号在ACtiOnSCriPt3.0中有三种用途。首先,在数学运算方面,可以用来变更表达式的运算依次。小括号内的数学表达式优先运算C其次,在表达式运算方面,可以结合运用小括号和逗号运算符,来优先计算系列表达式的结果并返回最终一个表达式的结果。5 .中括号(U):中括号主要用于数组的定义和访问,6 .大括号():大括号主要用于编程语言程序限制,函数和类中。在构成限制结构的每个语句前后添加大括号(例如ifelse或for),即使该限制结构只包含个语句。2.1.3 注稀注释是运用一些简洁易懂的语言对代码进行简洁的说明的方法。注释语句在编译过程中并不会进行求值运竟。可以用注释来描述代码的作用,或者返回到文档中的数据。注释也可以帮助记忆编程的原理,并有助于其他人的阅读。若代码中存些内容阅读起来含义大不明显,应当对其添加注释。ActionScript3.0中的注称语句彳两种:单行注样和多行注释。单行注释以两个单斜杠(/)起先,之后的该行内容均为注释。比如下面的代码:trace("1234")输出:12342.1.4 关键字和保留字保留字,从字面上就很简洁知道这是保留给ACtionSCriPt3.0语言运用的英文单词。因而不能运用这些单词作为变量、实例、类名称等.假如在代码中运用了这些单词,编译器会报错。ACtionSeriPt3.0中的保留字分为3类:词汇关键字、语法关键字和供将来运用的保留字。1 .词汇关键字2 .句法关键字3 .供将来运用的保留字。2.2 变和常变量和常量,都是为r储存数据而创建的。变量和常量就像是一个容器,用于容纳各种不同类型的数据。当然对变进行操作,变砧的数据就会发生变更,而常出则不会。变盘必须要先声明后运用,否则编译器就会报错。道理很简洁,比如现在要去喝水,那么你首先要有一个杯子,否则怎么样去装水呢?要声明变址的缘由与此相同。2.2.1 声明变肽的语法在ACtiOnSCriPt3.0中,运用Var关键字来声明变量。格式如下所示。Var变冷名:数据类型;var变量名:数据类型=值;变量名加日号加数据类型就是声明的变M的基本格式。要声明一个初始值,须要加上一个等号并在其后输入响应的值。但值的类型必须要和前面的数据类型一样。2.2.2 变量的命名规则变量的命名既是随意的,又是方规则,有目的的。顺手牵来、杂乱无章的命名在Flash里面简洁引起代码的混乱,也不简洁进行维护操作。变量的命名首先要遵循下面的几条原则:它必需是一个标识符。它的第一个字符必需是字母、下划线(_)或美元记号($)。其后的字符必需是字母、数字、下划线或美元记号。留意:不能运用数字作为变量名称的第一个字母。它不能是关键字或动作脚本文本,例如true、false、null或undefined.,特殊不能运用ACtionSeriPt的保留字,否则编译器会报错。它在其范困内必筋是惟一的,不能重复定义变成,2.2.3 变量的作用域变俄的作用域指可以运用或者引用该变依的范困,通常变出依据其作用域的不同可以分为全局变侬和局部变收,全局变减指在函数或者类之外定义的变时,而在类或者函数之内定义的变最为局部变砧。全局变盘在代码的任何地方都可以访问,所以在函数之外声明的变依同样可以访问,如下面的代码,函数TeSto外声明的变量i在函数体内同样可以访问。vari:int=l;定义Test函数functionTest()trace(i);TeSto输出:12.2.4 变量的默认值变量的默认值是指变量在没方赋值之前的值。对于ActionScript3.0的数据类型来说,都有各自的默认值,下面运用代码来测试一下:通过上面的代码输出,已经可以得到这些数据类型变量的默认值,分别为:BOOIean型变量的默认值是:false。int型变量的蛾认值是:OoNUmbCr型变量的默认值是:NaN<.ObjeCt型变量的默认值是:null,String型变域的默认值是:nulloUint型变量的默认值是:0。*型变量的默认值是:undefined,2.2.5 运用COnSt声明常故ActionScript3.0中增加了一个COnSt关键字,用于声明常微。常量是指具有无法变更的固定值的属性。比如Math.PI就是一个常量。常量可以看做一种特殊的变最,不过这种变量不能赋值,不能更改而已。运用用const声明常址的语法格式和Var声明的变肽的格式一样:const常量名:数据类型;const常城名:数据类型=值;卜面声明常城的代码:constg:Number=9.8;2.3 基砂数据类型和其它的面对对象的编程的数据类型一样,ctionScript3.0的数据类型同样分为两种,具体划分方式如卜.所示。基元型数据类型:BOOlean、int、Number、String和Uint。困难型数据类型:Array、Date、Error、Function、RegExp>XM1.和XM1.1.isto一般来说,基元值的处理速度通港比困难值的处理速度要快“基元型数据和困难型数据类型的最大的区分是:基元型是值对类型数据,而困难型是引用类型数据。值对类型干脆储存数据,运用它为另一个的变量赋值之后,若另个变量变更,并不影响原变量的值。引用类型指向要操作的对象,另一个变量引用这个变量之后,若另变量发生变更,原有的变小跟着也要发生变更。基元型数据类型都是值对类型数据,困难里数据都是引用类型数据。另外,最明显的一个区分是,假如数据类型能够运用new关键字创建,那么它肯定是引用型数据变量。2.3.1 基础数据类型说明本节通过大量的测试代码,来说明各种不同的数据类型的用法和运用中的留意事项。1. Boolean数据类型2. 数字:int、Uint和NUmber3. String数据类型4. Array数组类型5. ObjeCt数据类型6. ObjeCt数据类型2.3.2 数据类型检查任何编程代码在执行前或者执行时都要执行数据类型的检杳,以避开出现数据错误。ActionScript3.0是动态类型的语言,它默认的是执行时进行数据类型检查。同时它也在适合运用“严格模式”的编译器在编译时执行数据类型检查。在运用严格模式的编译器中,数据类型检查既可以在执行前执行编译器检查,也可以在运行时执行运行时检查。在标准模式卜只支持默认的执行时数据类型检查。比如说在程序编写过程中,要明确传递变总值的类型和接受参数类型相同。比如下面的代码:functionfunc(mystr:String)trace(mystr);varstr:String="welcomeyou"func(str);2.3.3 隐式数据类型转换数据类型转换是指把某个值转换为其它类型的数据。类型的转换有两种方式:隐式转换和显式转换。隐式转换又称为强制转换,由FlashPlayer在运行时执行。比如将2赋值给Boolean数据类型的变量,则FlashPlayer会先将2转换为布尔值true,然后再将其赋值给该变量。隐式转换可以称为自动转换,是在程序编译的过程中由程序本身来进行数据类型的转换。它主要发生在很多上下文中。主要分为以下几种状况:在赋值语句中。在将值作为函数的参数传递时。在从函数中返回值时。在运用某些运算符(如加法运算符(+)的表达式中。2.3.4 显式数据类型转换显式转换是指代码若指示编译器将一个数据类型的变属视为属于另一个类型的变量时执行该转换。该转换主要利用数据类型的对象名称来转换。常用的数据转换均为此方式。显示转换是利用数据类型的对象名称来转换,常见的主要有下面的几种。1 .转换为int、uint和Number2 .转换为Boolean3 .转换为String4 .3.5无类型说明符ActionScript3.0引入了三种特殊类型的无类型说明符:*,VOid和null运用*类型用于指定属性是无类型的。运用*作为类型注释与不运用类型注秣等效。从无类型属性中读取的表达式可视为无类型表达式。该说明符主要用于两个方面:将数据类型检查延缓到运行时和将undefined存储在属性中。void用于说明定函数无法返回任何值。void类型只有个值:Undefined0该说明符仅用于声明函数的返回类型。null是一个没有值的特殊数据类型°Null数据类型只有个值:null。Null数据类型的不与任何类相关联。不行将Null数据类型用作屈性的类型注释。2.4运算符与表达式学习门编程语言1,首先要弄清晰的就是如何对其中的数据进行运运用表达式来表达想要达到的效果,运用运算符来进行相关的运算,这就是数据运算的关键C本节主要介绍常用的运算符的用法。2.4.1 运算符和表达式基础学问运算符是可以通过给出的一个或者多个值来产生另一个值的东西。可以说它是一种特殊的函数。其中的值称为“操作数”,具体包括字面值、变量和表达式。运算符分为三种:一元运算符、二元运算符、三元运算符。一元运算符只运算一个值,例如递增运算符+;二元运算符比较常见,ActiOnSCriPt3.0中大部分运算符都是二元运算符;三元运算符具有三个操作数,例如条件运算符(?:)具有3个操作数C2.4.2 赋值运算符赋值运算符有两个操作数,它依据一个操作数的值对另一个操作数进行赋值操作。ActionScript中的赋值运算有12个,运复苻执行的运复三RUB,热聊值/-除;现值X-手模岐值+-加视信一宓SK值<<-按位向左移位K值>>-按位向右移位*值>»-技但无苻号向右格付“值A-技位.马P值八按位"异或nrBI=按位1'或p值2.4.3 算术运算符算术运算符共有6个,分别为:力|、戚、乘、除、模运算和求反运算。加、减、乘、除的运算很简洁,请看F面的代码示例:vara:int=l;varb:int=2;varc:int=a+b;vard:int=a-b;vare:int=a*b;varf:int=a/b;2.4.4 算术赋值运算符算术赋值运算符和算术运第符对应,共才5个,分别为+=、-=、*=、/=和%=。和赋值运算符一样,运算符的左边只能是变吊。右侧是一个要值、变量或表达式。这种类型的赋值运算符有时也叫做自赋值运弟符,就是利用自己进行运算并赋值给自己。比如下面的代码语句:a+=l;其要表达的运算过程就是下面的的代码要执行的运算过程。a=a+l;2.4.5 关系运算符关系运算符用于比较两个操作数的值的大小关系。常见的关系运算符一般分为两类:一类用于推断大小关系,一类用于推断相等关系。其具体状况如下:推断大小关系:大于运算符、V小于运算符、=大于等于运算符、V=小于等于运算符。推断相等关系:=等于运算符、!=不等于运算符、=严格等于运算符、!=严格不等于运算符.关系运算符左右两侧可以是数值、变量或者表达式。关系表达式的结果是Boolean值,flase或者true.1.1.1 小关系的运算符1.1.2 等关系的运算符:2.4.6 逻辑运算符逻辑运算符有3个,分别为:&&逻辑“与"运算符、II逻辑“或”运算符和!逻辑“非”运算符。逻辑运算符常用于逻辑运算,运算的结果为Boolean型。逻辑与(&&)和逻辑或(II)运算表达式要求左右两侧的表达式或者变量必需是Boolean型的值。&&:左右两侧有一个为flase,结果都为Case;只有两侧都为true,结果才为true0II:左右两侧花一个为true,结果都为true;只有两侧都为false,结果才为false。2.4.7 按位和按位赋值运算符按位运算符共有6个,分别为:&按位“与”、人按位“异或”、I按位“或”、VV按位左移位、>>按位右移位、>>>按位无符号移位。同样,按位赋值运算符也有6个,比照按位运算符分别为:&=按位“与"赋值、A=按位“异或“赋值、I=按位“或"赋值、<<=按位左移位赋值、>>=按位右移位赋值、>>>=按位无符号移位赋值。按位操作须要把十进制的整数,转换为二进制的数,然后进行操作。按位与操作过程:按位与操作的规则为:1+1=1,1+0=0,0+1=0,0÷0=0o比如11&34,Ii转二进制数为OOIoI1,34转二进制数为100ol0。现在依据位置从右向左第一位分别为1和0,所以取与后仍为0,依次取与的最终结果为OOOOl0。OoOOlo转为十进制数为2,所以最终的输出结果为2。代码如F所示。vara:int=l1;varb:int=34;trace(a&b);/输出为:22.4.8 递加递减运算符+递加运算符和一递减运算符常用于循环计算过程中,对循环中的变量进行递加或者递减操作。比如i+,它等价于i=i+l°测试代码如下:Vari:int=Oi+trace(i)输出:1同样,i一等价于i=i-l°测试代码如下:Vari:int=5;trace(i);/输出:42.4.9 三元条件运算符?:运算符是唯一的一个二元运算符,也就是说,这个运算符行三个操作数。具体的语法格式如下:(条件表达式)?(表达式1)M表达式2)格式说明如下:条件表达式:推断表达式,通过逻辑推断,得到一个BooIean型的结果。表达式1:推断表达式的结果为true,执行该语句。表达式2:推断表达式的结果为false,执行该语句。2.4.10 其它运算符在ACtiOnSCriPt3.0中还有几个常见的运算符,如:typeof、is、aso下面对这几个运算符进行简洁的说明:1. typeof运算符:typeof用于测试对象的的类型,运用的方法如下:typeof(对象);2. is运算符:is运算符用于推断一个对象是不是属于一种数据类型,返回B。Iean型变盘。假如对象属于同一类型,则返回true,否则返回false。3.as运算符:as运算符和is运算符的运用格式相同,但是返回的值不同。假如对象的类型相同,返回对象的值;若不同,则返回null。2.4.11运算符的优先级运算符的优先级依次确定了一个表达式运算依次。就像数学中的乘除运算要优于加减运算一样,ActiOnSCriPt3.0中的各运算符之间也有一个优先运算的依次。具体请参照表所示。犯运K符主要IIeyiOt(«)rew3«y<><>O三.后事+÷一元÷÷三«÷-deletetypeofvoid桑漆/XUDii+一KttStt<<»»><><三>0«irinvtorceo(v于!-!str*4MftTTmwAIl条怦免赋值-/-X-÷-<<-»->>>退号*第3章AS3.0任何门编程语言都要设计程序问题,ActionScript3.0也不例外。在本章中,将介绍ACtiQnSCriPt3.0系统的基本语句以和程序设计的股过程。许先介绍下程序限制的逻辑运算,然后着重介绍条件语句和循环语句。3.1 速辑运算在程序设计的过程中,要实现程序设计的目的,必需进行逻辑运算口只有进行逻辑运算,才能限制程序不断向最终要达到的目的前进,知道最终实现目标。逻辑运算又称为布尔运算,通常用来测试真假值。逻辑运算主要运用条件表达式进行推断,假如符合条件,则返回结果true,不符合条件,返回结果false0条件表达式中最常见的形式就是利用关系运算符进行操作数比较,进而得到推断条件。当然,彳丁的状况下须要限制的条件比较多,那么就须要运用逻辑表达式进行逻辑运算,得到一个的组合条件,并限制最终的输出结果。常见的条件表达式举例如下:(a>0):表示推断条件为a>00若是,返网true;否则返PlfaISeC(a=b)&&(a>0):表示推断条件为a大于0,并且a与b相等。若是,返回true,否则返回false11(a三=b)H(a>0):表示推断条件为a大于0,或者a与b相等。若是,返网true,否则返Plfalse113.2 程序的三伸结构在程序设计的过程中,假如限制程序,如何支配每句代码执行的先后次序,这个先后执行的次序,称之为“结构常见的程序结构有三种:依次结构、选择结构和循环结构。本节将逐个介绍一下这三种程序结构的概念和流程。3.2.1 依次结构依次结构最简洁,就是依据代码的依次,一句一句的执行操作,结构如图3-1所示。ActionScript代码中的简洁语句都是依据依次进行处理,这就是依次结构。请看下面的示例代码。执行的笫一句代码,初始化一个变员vara:int;执行其次句代码,给变量a赋值数值1a=l;执行第三句代码,变量a执行递加操作a+;3.2.2 选择结构当程序有多种可能的选择时,就要运用选择结构。选择那一个,要依据条件表达式的计算结果而定。结构如图所示。3.2.3 循环结构循环结构就是多次执行同一蛆代码,重红的次数由一个数值或条件来确定。结构如图所示。3.3 选界程序结构选择程序结构就是利用不同的条件去执行不同的语句或者代码。ActionScript3.0有三个可用来限制程序流的基本条件语句。其分别为if.else条件语句、if.elseif条件语句、SWitCh条件语句。本节将具体讲解这三种不同的选择程序结构C3.3.1 if.else条件语句if.else条件语句推断一个限制条件,假如该条件能够成立,则执行一个代码块,否则执行另一个代码块。if.else条件语句基本格式如F:if(表达式)语句1else语句2;3.3.2 if.elseif.else语句if.else条件语句执行的操作最多只有两种选择,要是有更多的选择,那就可以运用".elseif.else条件语句。3.3.3 Switch语句Switch语句相等于一系列的if.elseif.语句,但是要比if语句要清晰的多。SWitCh语句不是对条件进行测试以获得布尔值,而是对表达式进行求值并运用计算结果来确定要执行的代码块。Switch语句格式如下:switch(表达式)(case:程序语句1;break;case:程序语句2;break;case:程序语句3;break;default:默认执行程序语句;3.4 fit环程序结构在现实生活中有很多规律性的操作,作为程序来说就是要重复执行某些代码。其中重复执行的代码称为循环体,能否重复操作,取决于循环的限制条件。循环语句可以认为是由循环体和限制条件两部分组成。循环程序结构的结构一般认为有两种:3.4.1 条件推断,若条件成立,执行循环体代码,执行完之后再进行条件推断,条件成立接着,否则退出循环。若第次条件就不满意,则次也不执行,干脆退出。另种是先执行依次操作,不管条件,执行完成之后进行条件推断,若条件成汇,循环接着,否则退出循环。3.4.2 for循环语句for循环语句是ActionScript编程语言中最敏捷、应用最为广泛的语句。for循环语句语法格式如下:for(初始化;循环条件;步进语句)循环执行的语句;格式说明如下:初始化:把程序循环体中须要运用的变量进行初始化。留意要运用Var关键字来定义变量,否则编译时会报错。循环条件:逻辑运算表达式,运算的结果确定循环的进程。若为flase,退出循环,否则接着执行循环代码。步进语句:算术表达式,用于变更循环变盘的值。通常为运用+(递增)或-(递减)运算符的赋值表达式。循环执行的语句:循环体,通过不断变更变成的值,已达到须要实现的目标。3.4.3 WhiIe循环语句WhiIe循环语句是典型的“当型循环”语句,意思是当满意条件时,执行循环体的内容。WhiIe循环语句语法格式如下:WhiIe(循环条件)循环执行的语句格式说明如下:循环条件:逻辑运算表达式,运算的结果确定循环的进程。若为true,接着执行循环代码,否则退出循环。循环执行的语句:循环体,其中包括变量变更赋值表达式,执行语句并实现变量赋值。3.4.4 do.while循环语句do-while循环是另一一种while循环,它保证至少执行一次循环代码,这是因为其是在执行代码块后才会检查循环条件。do-while循环语句语法格式如下:do循环执行的语句while(循环条件)循环执行的语句:循环体,其中包括变量变更赋值表达式,执行语句并实现变量赋值。循环条件:逻辑运算表达式,运算的结果确定循环的进程。若为true,接若执行循环代码,否则退出循环。3.4.5 for.in和foreach.in语句for.in和foreach.in语句都可以用于循环访问对象属性或数组元素C下面分别运用两种语句来访问对象中的属性。代码如卜所示。定义一个对象Izxt,并添加属性name和agevarIzxtiObject=name;浪子啸天",age:30;执行遍历操作for(vari:Stringinlzxt)/输出属性名称和属性值trace("forin语句输出:"+i+":"+lzxti);执行foreach遍历操作foreach(vark:Stringinlzxt)输出属性值trace("foreach语句输出:-+k);3.4.6 循环的嵌套嵌套循环语句,就是在一个循环的循环体中存在另一个循环体,如此重复下去直到循环结束为止,即为循环中的循环。以for循环为例,格式如下所示。for(初始化;循环条件;步进语句)for(初始化;循环条件;步进语句)循环执行的语句;3.4.7 循环流程限制语句在ActionScript3.0中可以运用break和continue来限制循环流程。break语句的结果是F脆跳出循环,不再执行后面的语句;ContinUe语句的结果是停止当前这一轮的循环,干脆跳到下一轮的循环,而当前轮次continue后面的语句也不再执行。下面的两个例子分别执行循环变量从0递增到10的过程,假如i等于4,分别执行break和ContinUe语句,看发生的状况。代码如下所示。运用break限制循环for(vari:int=0;i<10;i+)if(i=3)break;trace("当前数字是:"+i);第4章函数函数在程序设计的过程中,是一个革命性的创新。利用函数编程,可以避开冗长、杂乱的代码;利用函数编程,可以重复利用代码,提高程序效率;利用函数编程,可以便利的修改程序,提高编程效率。函数(FUnCtion)的精确的定义为:执行特定任务,并可以在程序中重用的代码块。ACtionSCriP13.0中有两类函数:“方法”和“函数闭包,具体是将函数称为方法还是函数闭包,取决于定义函数的上下文。4.1 定义函数在ActionScript3.0中有两种定义函数的方法:一种是常用的函数语句定义法;一种是ACtionSeriPt中独有的函数表达式定义法。具体运用哪一种方法来定义,要依据编程习惯来选择。一般的编程人员运用函数语句定义法,对于有特殊需求的编程人员,则运用函数表达式定义法。4.1.1 函数语句定义法函数语句定义法是程序语言中基本类似的定义方法,运用function关健字来定义,其格式如下所示。function函数名(参数1:参数类型,参数2:参数类型):返回类型(函数体代码格式说明:function:定义函数运用的关键字。留意function关键字要以小写字母开头。函数名:定义函数的名称。函数名要符合变城命名的规则,最好给函数取一个与其功能一样的名字。小括号:定义函数的必需的格式,小括号内的参数和参数类型都可选。返何类型:定义函数的返PI类型,也是可选的,要设置返何类型,冒号和返何类型必需成对出现,而且返Pl类型必需是存在的类型。大括号:定义函数的必需格式,须要成对出现。括起来的是函数定义的程序内容,是调用函数时执行的代码。4.1.2 函数表达式定义法函数表达式定义法有时也称为函数字面值或匿名函数C这是一种较为繁杂的方法,在早期的ACtiOnSCriPt版本中广为运用“其格式如所示。Var函数名:FUnCtiOn=function(参数1:参数类型,参数2:参数类型):返回类型