术语汇编全面认识Flex函数用法

本文和大家重点讨论一下Flex函数的用法,Flex函数是封装起来的一段特定的代码块,目的是为了更好的重用代码,更容易维护,希望本文的介绍能让你有所收获。

网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了大柴旦免费建站欢迎大家使用!

Flex函数

Flex函数:Flex函数是封装起来的一段特定的代码块,目的是为了更好的重用代码,更容易维护.

1.定义Flex函数

格式:作用域functionFlex函数名(参数1,参数2,....):返回类型

{
Flex函数体
}

Code

 
 
 
  1. /*************************************  
  2. *创建获取全名的Flex函数  
  3. *************************************/  
  4. privatefunctionGetFullName(fName:String,lName:String):String  
  5. {  
  6. //组合名字  
  7. varfullName:String=fName+""+lName;  
  8.  
  9. //返回全名  
  10. returnfullName;  
  11. }  
  12.  

2.Flex函数调用

格式:Flex函数名(参数1,参数2,参数3,...);

Code

 
 
 
  1. //包  
  2. package  
  3. {  
  4. importflash.display.Sprite;  
  5. //类名  
  6. publicclassFunctionExampleextendsSprite  
  7. {  
  8. /*************************************  
  9. *构造Flex函数  
  10. *************************************/  
  11. publicfunctionFunctionExample()  
  12. {  
  13. //调用Flex函数  
  14. varfullName:String=GetFullName("Tom","Green");  
  15.  
  16. //输出  
  17. trace("全名是:"+fullName);  
  18. }  
  19.  
  20. /*************************************  
  21. *创建获取全名的Flex函数  
  22. *************************************/  
  23. privatefunctionGetFullName(fName:String,lName:String):String  
  24. {  
  25. //组合名字  
  26. varfullName:String=fName+""+lName;  
  27.  
  28. //返回全名  
  29. returnfullName;  
  30. }  
  31. }  
  32.  
  33. }  
  34.  

#p#3.Flex函数作用域:

Flex函数是有权限,分为公有和私有.公有关键字public,私有关键字private.

Code

 
 
 
  1. package  
  2. {  
  3.  
  4. publicclassSongInfo  
  5. {  
  6. /************************************  
  7. *根据歌曲名获取歌手信息  
  8. **/  
  9. publicfunctionGetSinger(songTitle:String):String  
  10. {  
  11. varsinger:String="";  
  12.  
  13. switch(songTitle)  
  14. {  
  15. case"改变自己":  
  16. singer="王力宏";  
  17. break;  
  18. case"夜曲":  
  19. singer="周杰伦";  
  20. break;  
  21. case"知足":  
  22. singer="五月天";  
  23. break;  
  24. case"就是爱你":  
  25. singer="陶喆";  
  26. break;  
  27. }  
  28.  
  29. returnsinger;  
  30. }  
  31.  
  32. /************************************  
  33. *根据歌曲名获取歌手信息  
  34. **/  
  35. publicfunctionGetAlbumInfo(songTitle:String):String  
  36. {  
  37. returnGetAlbum(songTitle);  
  38. }  
  39.  
  40. /************************************  
  41. *根据歌曲名获取歌手信息  
  42. **/  
  43. privatefunctionGetAlbum(songTitle:String):String  
  44. {  
  45. varalbum:String="";  
  46.  
  47. switch(songTitle)  
  48. {  
  49. case"改变自己":  
  50. album="改变自己";  
  51. break;  
  52. case"夜曲":  
  53. album="十一月的萧邦";  
  54. break;  
  55. case"知足":  
  56. album="知足";  
  57. break;  
  58. case"就是爱你":  
  59. album="太平盛世";  
  60. break;  
  61. }  
  62.  
  63. returnalbum;  
  64. }  
  65. }  
  66.  
  67. }  
  68.  

4.访问上面的Flex函数:

Code

 
 
 
  1. package  
  2. {  
  3. importflash.display.Sprite;  
  4.  
  5. publicclassFunctionScopeExampleextendsSprite  
  6. {  
  7. /*************************************  
  8. *构造Flex函数  
  9. *************************************/  
  10. publicfunctionFunctionScopeExample()  
  11. {  
  12. //调用Flex函数  
  13. GetSongInfo("夜曲");  
  14. }  
  15.  
  16. /*************************************  
  17. *获取歌曲信息  
  18. *************************************/  
  19. privatefunctionGetSongInfo(song:String):void  
  20. {  
  21. //声明变量  
  22. varsinger:String="";  
  23. varalbum:String="";  
  24.  
  25. //实例化  
  26. varsongInfo:SongInfo=newSongInfo();  
  27. //获取歌手信息  
  28. singer=songInfo.GetSinger(song);  
  29. //获取所属专辑  
  30. album=songInfo.GetAlbumInfo(song);  
  31.  
  32. //输出结果  
  33. trace("歌曲名:"+song);  
  34. trace("歌手:"+singer);  
  35. trace("所属专辑:"+album);  
  36. }  
  37. }  
  38.  
  39. }  
  40.  

返回结果:

歌曲名:夜曲

歌手:周杰伦

所属专辑:十一月的萧邦#p#

5.Flex函数的参数

5.1.值参数:

值参数传入Flex函数体后复制一个副本在Flex函数内使用不会影响外部变量的值.

Code

 
 
 
  1. publicfunctionArgumentsExample()  
  2. {  
  3. //值参数  
  4. varfName:String="Lalo";  
  5. trace("传递之前的变量值:"+fName);  
  6. PassPrimitives(fName);  
  7. trace("传递之后的变量值:"+fName);  
  8. }  
  9.  
  10. /************************************  
  11. *值传递参数  
  12. **/  
  13. privatefunctionPassPrimitives(fName:String):void  
  14. {  
  15. fName="hello!"+fName;  
  16.  
  17. trace("Flex函数返回值:"+fName);  
  18. }  
  19. /*返回值  
  20. 传递之前的变量值:Lalo  
  21. Flex函数返回值:hello!Lalo  
  22. 传递之后的变量值:Lalo  
  23. */  
  24.  

引用参数:引用参数传入Flex函数体后部会产生一个副本,而是传递一个参数的引用,所以Flex函数内部所做的修改会影响到外部引用变量的值.

Code

 
 
 
  1. publicfunctionArgumentsExample()  
  2. {  
  3. //引用参数  
  4. varmyName:Object={fName:"Lalo"};  
  5. trace("传递之前的变量值:"+myName.fName);  
  6. PassByRef(myName);  
  7. trace("传递之后的变量值:"+myName.fName);  
  8. }  
  9.  
  10. /************************************  
  11. *引用传递参数  
  12. **/  
  13. privatefunctionPassByRef(myName:Object):void  
  14. {  
  15. myName.fName="Tom";  
  16. trace("Flex函数返回值:"+myName.fName);  
  17. }  
  18. /*返回结果:  
  19. 传递之前的变量值:Lalo  
  20. Flex函数返回值:Tom  
  21. 传递之后的变量值:Tom  
  22. */  
  23.  

#p#5.3默认参数:

定义了默认参数后,传值时可以将其省略,但是默认参数必须放在非默认参数后面.

Code

 
 
 
  1. publicfunctionArgumentsExample()  
  2. {  
  3. //默认参数  
  4. DefaultArguments(2,5);  
  5. }  
  6. /************************************  
  7. *默认参数  
  8. **/  
  9. privatefunctionDefaultArguments(x:int,y:int,z:int=10):void  
  10. {  
  11. trace(x,y,z);  
  12. }  
  13. /*返回结果:2510*/  

5.4arguments对象参数:

arguments对象是一个数组,保存着所有传递过来的参数信息,可以应用arguments对象获得所有的参数信息,arguments.length属性获得参数的个数.

Code

 
 
 
  1. //arguments参数  
  2. ArgumentsObject(10,20,30);  
  3. /************************************  
  4. *arguments参数  
  5. **/  
  6. privatefunctionArgumentsObject(x:int,y:int,z:int):void  
  7. {  
  8. trace("输出所有参数:");  
  9.  
  10. for(vari:uint=0;i
  11. {  
  12. trace(arguments[i]);  
  13. }  
  14. }  
  15.  

/*返回结果
10
20
30
*/
5.5...(rest)参数:

接受多个以逗号分割的参数.

Code

 
 
 
  1. /************************************  
  2. *(rest)参数  
  3. **/  
  4. privatefunctionRestArguments(args):void  
  5. {  
  6. trace("输出所有参数:");  
  7.  
  8. for(vari:uint=0;i
  9. {  
  10. trace(args[i]);  
  11. }  
  12. }  
  13. //(rest)参数  
  14. RestArguments(10,20,30);  
  15.  

/*返回结果:
10
20
30
*/
6.递归Flex函数:

反复调用自身的Flex函数.

Code

 
 
 
  1. publicfunctionSelfFunctionExample()  
  2. {  
  3. trace("递归Flex函数的结果:"+SelfFunction(6));  
  4. trace(GetFullName());  
  5. }  
  6.  
  7. *递归Flex函数  
  8. **/  
  9. publicfunctionSelfFunction(x:int):int  
  10. {  
  11. if(x==0)  
  12. {  
  13. return0;  
  14. }  
  15. else  
  16. {  
  17. return2*SelfFunction(x-1)+x*x;  
  18. }  
  19. }  
  20.  

返回结果:
递归Flex函数的结果是:318

文章标题:术语汇编全面认识Flex函数用法
分享网址:http://www.shufengxianlan.com/qtweb/news10/194460.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联