Flash ActionScript3.0教程 联系客服

发布时间 : 星期一 文章Flash ActionScript3.0教程更新完毕开始阅读efb16708747f5acfa1c7aa00b52acfc789eb9fbf

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

HelloAS();

代码运行后的输出结果,如下所示。 /输出:AS3.0世界欢迎你! 4.2.2 嵌套和递归调用函数

嵌套和递归调用是两种类似函数调用方式,其本质都是在调用函数时用一个函数就调用另一个函数。不同的是,嵌套调用是用一个函数去调用另一个函数,而递归调用是函数调用自身函数。

1.嵌套调用函数 2.递归调用函数

4.3 函数的返回值

主调函数通过函数的调用得到一个确定的值,此值被称为函数的返回值。利用函数的返回值,可以通过函数进行数据的处理、分析和转换,并能最终获取想要获得的结果。在本节我们主要学习函数返回值的获取方法和获取过程中的注意事项。 4.3.1 return语句

AS从函数中获取返回值,使用return语句来实现,语法格式如下: return 返回值

return:函数返回值的关键字,必须的。

返回值:函数中返回的数据,既可以是字符串、数值等,也可以是对象,如数组、影片简介等。

下面定义一个求圆形面积的函数,并返回圆面积的值,其代码如下: function 圆面积(r:Number):Number{ var s:Number=Math.PI*r*r return s }

trace(圆面积(5)) 4.3.2 返回值类型

函数的返回类型在函数的定义中属于可选参数,如果没有选择,那么返回值的类型由return语句中返回值的数据类型来决定。

下面的代码,return语句返回一个字符型数据,来验证一下返回值的类型。

21

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

function 类型测试() {

var a:String=\这是一个字符串\return a; }

trace(typeof(类型测试())); 代码运行后的输出结果,如下所示。 string

4.4 函数的参数

函数通过参数向函数体传递数据和信息。ActionScript 3.0对函数的参数增加了一些新功能,同时也增加了一些限制。有大多数程序员都熟悉的按值或按引用传递参数这一概念,也有对很多人很陌生的arguments对象和...(rest)参数。 4.4.1 传递参数的语法

函数中传递的参数都位于函数格式的括号中,语法格式如下: (参数1:参数类型=默认值,参数2:参数类型=默认值)

下面定义一个个性化的欢迎语句,对不同的姓名给出对应的问候。代码如下所示。 function Welcome(username:String):void { trace(\欢迎你!\}

Welcome(\张三\Welcome(\小明\

代码运行后的输出结果,如下所示。 欢迎你!张三 欢迎你!小明

4.4.2 传递参数的的两种方法

许多编程语言中,参数的传递基本都是两种类型:按值或者按引用传递。按值传递意味着将参数的值复制到局部变量中以便在函数内使用。按引用传递意味着将只传递对参数的引用,而不传递实际值。要了解任何一门编程语言中的函数,首先必须搞清楚的问题就是参数的传递到底是按值还是按引用来传递参数。

在ActionScript 3.0 中,所有的参数均按引用传递,因为所有的值都存储为对象。基元型

22

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

数据是不变的对象,按按值还是按引用的效果一样,通常可以看作是按值传递。按值传递,就是指参数被传递给函数后,被传递的变量就独立了。若在函数中改变这个变量,原变量不会发生任何的变化。 4.4.3 给函数设置默认参数

在ActionScript 2.0中并不支持对函数设置默认参数,此为ActionScript 3.0的新功能。要给一个函数的参数设置默认值,语法格式如下:

function(参数1:参数类型=默认值,参数2:参数类型=默认值)

默认参数是可选项,可以设置默认参数,也可以不设置默认参数。若设置了默认参数,则在调用函时,若果没有写明参数,系统将使用在函数定义中为该参数指定的值。 4.4.4 arguments 对象和...(rest) 参数

ActionScript3.0中有两种函数调用时检查参数数量的方法,分别为使用arguments对象和..(rest) 参数。 1.arguments 对象

在函数中,可以使用arguments 对象来访问有关传递给该函数的参数的信息。arguments 对象是一个数组,其中按顺序保存着传递给函数的所有参数。可以使用数组的访问方式来访问传入的参数。它有一个length属性记录当前传入的参数数目;还有一个属性callee提供对函数本身的引用,该引用可用于递归调用函数表达式。 2....(rest)参数

...(rest)参数是ActionScript3.0引入的新参数声明。使用该参数可指定一个自己命名的数组参数来接受任意多个以逗号分隔的参数。

第5章 事件的发送和处理

事件处理系统是交互式程序设计的重要基础。利用事件处理机制,可以方便的相应用户输入和系统事件。ActionScript 3.0的事件机制基于文档对象模型(DOM3),是业界标准的事件处理体系结构。使用机制不仅方便,而且符合标准。ActionScript 3.0全新的事件处理机制是ActionScript编程语言中的重大改进,对ActionScript程序设计人员来说,在使用上也更加的方便和直观。

5.1 事件处理基础

在本节将介绍事件和处理的基本概念,了解常见的事件处理任务。对照ActionScript编程

23

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

语言中不同版本的事件处理机制的异同,明确ActionScript 3.0中事件处理机制具有良好的性能。

5.1.1 事件和事件处理基础知识

事件和事件处理是面向对象编程的基础。本节将介绍事件和事件处理的基础知识以及事件处理的方法和事件处理的任务。 1.事件和事件处理基本概念

2.ActionScript 3.0中的事件和事件处理 3.ActionScript 3.0中的事件处理任务

在ActionScript 3.0编程过程中,常见的使用事件处理的任务有: 编写代码以响应事件 阻止代码响应事件 处理事件对象 处理事件流 从类中调度事件 创建自定义事件类型

5.1.2 早期 ActionScript 版本中的事件处理

ActionScript 1.0使用on()和onClipEvent()两个事件处理函数来处理事件。具体为: on()事件处理函数,直接放在按钮或者影片剪辑实例上。 onClipEvent()处理函数,直接放在影片剪辑实例上。

这种方法把代码直接夹在实例上,简单易于、方便直接,但是由于分散在各个不同的元件之上,难以管理和维护。特别是处理不是本人编写的代码,查看和找寻会浪费太多的宝贵时间。 在ActionScript2.0中对事件处理进行了改进,增加了一些事件处理机制,具体为: 回调函数事件:onload、oninit、onComplete等。 事件侦听器:addListener()、addEventListener()。 5.1.3 ActionScript 3.0中的事件处理

在ActionScript 3.0引入了基于文档对象模型(DOM3)唯一的一种事件处理模式,取代了以前各版本中存在的众多的事件处理机制。在ActionScript3.0中值存在一种事件处理模型,虽然会对一些老版本的用户和一些非开发者造成一定的麻烦,但更加清晰,更加标准,更符合面向对象开发的需要。

对比ActionScript 2.0,ActionScript 3.0的事件处理体系具有以下几个新特点:

24