邮件订阅
5ucms培训,flash action 详解(9)
作者: 来源: 日期:2017/4/10 8:16:24 浏览量:31(滞后) 人气:LOADING...(实时) 【

5ucms培训,flash action 详解(9)同变量一样, 函数也可以具有全局性. 只要在声明时在前面给它加一个 _global 就可以了:
//计算矩形面积的全局函数
_global.areaOfBox = functia+b="+(a+b));
//检测参数是否足够且类型正确
if(a==undefined || b==undefined || typeof(a+b)!="number") {
trace("<参数错误>");
return 0; //返回 0 作为错误时的结果
}
return a*b; //在这里返回结果
}
//测试函数
trace("----下面是正确的参数----");
area = areaOfBox(3, 6);
trace("area="+area);
trace("----下面是错误的参数----");
//这里为了节省篇幅, 我在命令中直接调用函数, 而不是先将返回值赋给一个变量
//其实这才是我们常用的函数调用方法
trace("area="+ areaOfBox(3, "6"));
trace("----下面是不足的参数----");
trace("area="+areaOfBox(3));
上例中我用 a==undefined 来判断 a 是否被赋值了(即是否已定义, 对于 undefined 数据类型的内容请参阅前一章的内容). 为了确保万无一失, 我还用了 b==undefined 来保证 b 也已被赋值, 中间使用一个逻辑 "或" 运算符 || 来连接这两个条件.
此外, 在这两个条件后面我又通过 typeof(a+b)!="number" 来确认参数类型是否正确(关于 typeof 关键字的信息请参考前一章). 这里我利用了 Actiobject_1.value="http://www.dedecms.com/web-art/pingmianshejiruanjian/Flash/20060518/+object_1.value);
array_ab = [4, 5]; //创建参数数组
areaOfBox.apply(object_2, array_ab);
trace("object_2.value="http://www.dedecms.com/web-art/pingmianshejiruanjian/Flash/20060518/+object_2.value);

为什么要通过 call 和 apply 来调用函数? 这样不比前面的直接调用麻烦吗?
的确, 这样调用函数比较麻烦, 但你注意到了我使用的第一个参数没有? 通过第一个参数可以指定在函数体中的 this 关键字代表什么对象, 这就是用 call 和 apply 的好处(关于对象和 this 的内容在后面章节中才会提到, 在这里暂且不提). 这个好处只有在实际的编程中你才能体会得到, 这里只是简要介绍一下, 让你有个基本的概念.
如果函数中没有使用 this 关键字, 第一个参数要用 null 代替.
在本例中第一个返回值被放入 object_1 的 value 属性中, 另一个会被放入 object_2 的 value 属性中. 通过 call 和 apply 的第一个参数我们让函数体中的 this 先后代表了 object_1 和 object_2 两个对象. 第一个参数后面的实际参数的给予完全依照要调用函数的参数个数和类型确定.
至于 call 与 apply 的不同之处上面已经表示得很明白了: apply 的实际参数是通过数组传递的.
arguments 对象
arguments 对象
arguments 对象, 顾名思义就是参数对象, 它包含的是函数调用的参数. 作为一个数组对象, 它只有三个属性:
属性 描述
arguments.callee 正被调用的函数
arguments.caller 正在进行此调用的函数
arguments.length 传递给被调用函数的参数数目


欢迎您访问www.5ucms.org

本站推荐: 5ucms模板下载 5ucms插件下载 仿站联系Q3876307       [复制给好友] [打印] [关闭] [返回] [顶部]
上一篇:5ucms仿站,flash action 详解(7)
下一篇:5ucms教程,Flash 2004 MX Components
本站声明:本网站所载文章等内容,目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权及其它问题,请在30日内与本网联系(Email:3876307#qq.com),我们将在第一时间删除内容。若原创内容转载请注明出处。
5ucms培训,flash action 详解(9)的关键词:
评论信息
相关分类
本周热门
本月热门
关于我们 - 版权/免责 申明 - 建站服务 - 网站地图 - 稿件投递 - 联系我们 - 5ucms
Copyright © 2008-2015 www.5ucms.org