ActionScript3互动编程第三讲课件

PPT
  • 阅读 116 次
  • 下载 0 次
  • 页数 16 页
  • 大小 260.366 KB
  • 2022-11-24 上传
  • 收藏
  • 违规举报
  • © 版权认领
下载文档10.00 元 加入VIP免费下载
此文档由【小橙橙】提供上传,收益归文档提供者,本网站只提供存储服务。若此文档侵犯了您的版权,欢迎进行违规举报版权认领
ActionScript3互动编程第三讲课件
可在后台配置第一页与第二页中间广告代码
ActionScript3互动编程第三讲课件
可在后台配置第二页与第三页中间广告代码
ActionScript3互动编程第三讲课件
可在后台配置第三页与第四页中间广告代码
ActionScript3互动编程第三讲课件
ActionScript3互动编程第三讲课件
还剩5页未读,继续阅读
【这是免费文档,您可以免费阅读】
/ 16
  • 收藏
  • 违规举报
  • © 版权认领
下载文档10.00 元 加入VIP免费下载
文本内容

【文档说明】ActionScript3互动编程第三讲课件.ppt,共(16)页,260.366 KB,由小橙橙上传

转载请保留链接:https://www.ichengzhen.cn/view-45374.html

以下为本文档部分文字说明:

ActionScript3互动编程第三讲函数前言函数是指,在程序中执行特定的任务并可重用的代码块。在面向过程中,称为闭包函数,在类体中,或与某个对象进行绑定称为该类或对象的方法。函数可接受外部传入的值也可返回运算的

结果。一个简单的例子:比如:我们现在有一个任务,就是让多个影片剪辑执行相同的运算即,沿着x轴向左移动,并且逐渐变小,最后消失。如果我们对每一个影片剪辑都输入相同的命令显然不是最佳的做法:mc1.x++mc2.x++mc3.x++mc1.scaleX-=

0.1mc2.scaleX-=0.1mc3.scaleX-=0.1前例中只有三个影片剪辑,而且每个影片剪辑所作的属性操作也只有位置和缩放属性,我们还可以接受,如果是有很多影片剪辑呢?或者说如果是一项很复杂的任务需要几十行甚至上百行的代码才能完成,我们这种方法就不适用了。这时候我

们就可以考虑把一项相对独立的任务写成一个特定的函数,用到时直接对该函数调用就可以了,这就是面向对象的精髓——代码复用的概念了。函数是实现代码复用最简单的形式。前例的改写movies(mc1)movies(mc2)movies(mc3)functionmovies(mc:MovieClip

):void{mc.x++mc.scaleX-=0.1}函数定义法函数的定义有两种方式:一种是函数语句定义法;另外一种是函数表达式定义法.1、函数语句定义法的格式如下:看下例,声明一个函数,功能是角度转换弧度。function函数名

(参数1,参数2,...):返回类型{//函数体}functiontoAngle(degree:Number):Number{returndegree*Math.PI/180}采用这种方式进行定义的函数可以获得更加灵活的空间,稍后讨论。我们可以理解为:我们定义了一个变量,然后在内存中申

请了一个内存空间并声明了一个匿名函数,将其引用赋值给了变量:var函数名=function(参数1,参数2,...):返回类型{//函数体}2、函数表达式定义法格式vartoAngle=function(degree:Number):Number{returndegree

*Math.PI/180}2、两种定义法的区别–函数语句定义法更标准在运行中执行顺序会提升,而后者则必须先定义再使用:afun("开心");//报错:值非函数,这条必须注释掉,否则就把afun定义提前bfun("不

开心");//成功varafun=function(w:String){trace(w)};functionbfun(s:String){trace(s);}varafun=function(w:String){trace(w)};afun=null//函数被回收的例子–函数表达式定

义法变量持有的引用一旦改变,函数体就会变成匿名函数,被垃圾回收机制回收:4、函数的参数AS3对函数的参数作了严格的设定,函数调用时参数的个数和类型要严格的和定义时保持一致,否则便一起就会报错:bfun(

"不开心");//成功bfun(20)//错误1067:int类型值的隐式强制指令的目标是非相关类型String。bfun("20","20")//错误,1137:参数个数不正确。不应超过1个。functionbfun(s:String){trace(s)

;}4、函数的参数AS3的函数参数传递的是引用:varvarA:Array=[10,20,12]varvarB:Number=2functiontestFunc(a:Array,b:Number){a.push(100)b=10}testFunc(varA,varB)trace(

varA)trace(varB)4、函数的默认参数设定在定义函数时,可以为参数设定初始值,这是在调用该函数时如果没有指定该参数,编译器会自动调用该参数的默认值:functiontestFunc(b:Number=20){trace(b)}testFunc()//20test

Func(5)//54、不确定参数个数的函数functiontestFunc(...rest){trace("传入的参数个数:"+rest.length)for(vari=0;i<rest.length;i++){trace(rest[i])}}test

Func(1,"4","开心")varfunc:Functionvarsexy:String="男"if(sexy=="男"){func=boyFun}elseif(sexy=="女"){func=girlFun}functionboyFun(){trace("我是一个帅哥")}f

unctiongirlFun(){trace("我是一个美女")}func()代理函数functionsexyFunc(type:*):Function{if(type=="男"){returnboyFu

n;}elseif(type=="女"){returngirlFun;}else{returnerroFun;}}利用函数返回函数functionboyFun(){trace("我是一个帅哥");}functiongirlFun(){trace("我是一个美

女");}functionerroFun(){trace("参数传入不符!");}varchick:Function=sexyFunc("男");chick()函数综合练习——格式化时间函数的编写functionformatTime(h:*,m:*,s:*):String{var_h:S

tring=format(h);var_m:String=format(m);var_s:String=format(s);var_result=_h+":"+_m+":"+_s;return_result;}functionformat(n:*):St

ring{var_n=Number(n);if(_n<10){_n="0"+_n;}else{_n=_n;}returnString(_n);}trace(formatTime(1,12,9))

小橙橙
小橙橙
文档分享,欢迎浏览!
  • 文档 25747
  • 被下载 7
  • 被收藏 0
相关资源
广告代码123
若发现您的权益受到侵害,请立即联系客服,我们会尽快为您处理。侵权客服QQ:395972555 (支持时间:9:00-21:00) 公众号
Powered by 太赞文库
×
确认删除?