flash action 详解(8)

2016-01-29 13:04 6 1 收藏

flash action 详解(8),flash action 详解(8)

【 tulaoshi.com - Flash 】

第 4 章: 函数---函数的基本概念

终于写完了数据类型和条件以及循环语句部分, 现在可以讲讲函数了.
函数是在程序中可以重复使用的代码. 你可以将需要处理的值或对象通过参数的形式传递给函数, 然后由函数得到结果. 从另一个角度说, 函数存在目的就是为了简化编程的负担, 减小代码量和提高效率. 而一个写得好的函数, 就像一个"黑箱", 你只要懂得调用它就行了, 而不用去关心它的具体功能是如何实现的
创建自己的函数---函数定义(Definition)
要创建一个函数, 就需要有函数的定义. 对于 Actions cript, 就没有什么返回值类型, 形参实参之类的东西好讨论了. 下面是一个简单函数的定义:
//计算矩形面积的函数
function areaOfBox(a, b) {
return a*b; //在这里返回结果
}
//测试函数
area = areaOfBox(3, 6);
trace("area="+area);
现在来分析一下函数定义的结构. function 关键字说明这是一个函数定义, 而不是一段执行代码. 其后便是函数的名称: areaOfBox. 函数名后面的括号内是函数的参数列表(也可以没有参数, 但括号是必须要有的). 紧接着的大括号内是函数的实现代码, 即 Actions cript 语句. 如果函数需要返回值, 可以使用 return 关键字加上要返回的变量名, 表达式或常量名. 在一个函数中可以有多个 return 语句, 但无论何时, 只要执行了其中的任何一个 return 后, 函数便自行终止而不会继续执行下去. 如果没有 return 语句, 则在函数尾最后一个语句执行后结束.
因为 Actions cript 的特殊性, 函数的参数定义并不要求参数类型的声明, 即可以不指定参数类型. 这省去了很多麻烦, 也带来了一些问题. 虽然把上例中倒数第二行改为 area = areaOfBox("3", 6); 也同样可以得到 18 的结果, 但是这对程序的稳定性非常不利(假如函数里面用到了 a+b 的话, 就会变成字符串的连接运算, 结果自然会出错). 所以, 有时候在函数中类型检查是不可少的.
在函数体中参变量用来代表要操作的对象. 你在函数中对参变量的操作, 就是对传递给函数的参数的操作. 上例中的 a*b 在你调用函数时会被转化为参数的实际值 3*6 处理.

--------------------------------------------------------------------------------
函数还有一种创建方法, 叫做函数显式声明(function literal, 不是通过正式的函数声明而是在一个表达式内通过未命名的函数来进行声明):
areaOfBox = function(a,b) {return a*b;};
trace("area="+areaOfBox(2,3));
这种形式的声明经常用在对象的方法或是函数库的函数声明中.
在 Flash MX 的帮助中函数定义部分关于这种声明的范例代码有误, 请注意.

--------------------------------------------------------------------------------
上面是有返回值的函数, 在函数尾使用了 return 关键字来返回结果. 函数也可以不返回任何值. 如下例:
//无返回值的函数
function areaOfBox(a, b) {
_root.area = a*b;
}
//测试函数
areaOfBox(3, 6);
trace("area="+_root.area);
它的结果也是 18, 只不过最后的结果是传递到 _root 下的指定变量 area 而已.下面一个例子更简单:
//计算矩形面积的函数
function simpleFunc() {
trace ("什么都没有"); //在这里返回结果
}
//测试函数
simpleFunc();
最后的输出就是 trace 中的字符串. 就是说, 函数可以既没有参数也没有返回值, 而是一系列操作的集合. 可见函数的使用具有很高的灵活性.

来源:http://www.tulaoshi.com/n/20160129/1488801.html

延伸阅读
标签: 手机软件
随着iOS设备功能的日益完善,它们已经不再是功能单一的设备,而是可以让用户的生活更加方便的智能设备,现在在设备当中进行一些文字的编辑工作已经不再是什么新鲜事了,对于文字编辑当中各种功能相信许多人也不会陌生了,今天小编就带来一款对文字编辑菜单有增强效果的插件——《Action Menu》。 详细图文介绍 ...
标签: flash教程
既然是基础篇,就可以白说一堆大家都知道的废话,来浪费大家的时间,那简直是一定的。但是想想打字挺累得,还是算了吧,那些大家都差不多都知道的话我就不写了,反正在网上也很好找到。故以下作者删去50000字…… 废话少说,咱们现在差不多都是用RGB数值描述一个东西的颜色,RGB,red、green、blue顾名思义,红绿蓝嘛。这三个颜色可以...
标签: flash教程
众所周知,中要实现3D效果是比较麻烦的,下面我们就用ActionScript来实现一个比较简单的3D效果。先看看最终效果,一个看起来像是3D效果的花在场景中旋转,在旋转的过程中会改变颜色,还会响应鼠标作相应的动作。静态效果如图1所示。 一、实现原理 要在只能显示二维图形的Flash中显示三维图形,...
标签: PS PS教程
    “Action”在Photoshop的汉化版中被翻译成“动作”。“Action”这个概念,是从Photoshop 4.0版起开始出现的,在Photoshop 4.0版之前称之为“Command”。Action是一个记录了一系列Photoshop操作指令的文件,就好像DOS下的批处理或是Word中的宏。Action文件的扩展名是ATN。 您只要事先准备好待处理的图像,再...
下载本文的实例源文件 1.对象的绘制 在以前版本的Flash中,如果我们使用绘图工具绘制两个重叠但不互相结合到一起的对象时,需要分别将两个对象转换为元件,或者单独放在两个图层中才可以实现,否则两个对象会重叠联合在一起,这样的操作相对来说比较麻烦。如图1所示。 图1 在Flash8中,增加了对象绘制功能,...

经验教程

763

收藏

48

精华推荐

Flash MX 视频导入功能详解

Flash MX 视频导入功能详解

热血搞笑0

Flash 8 混合模式初探

Flash 8 混合模式初探

小白羊1212

Flash 8 光影变换效果

Flash 8 光影变换效果

程控交换机01

微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部