由于actionscript :泛化功能,以提高可重用
你想表现略有变化的一个行动而不必重复多行代码,以容纳小异。 加上参数,你的功能,使之具有足够的灵活性以履行略有不同,而采取行动时,它是引用而非表演完全相同的行动或产生同样的效果,每次。 界定参数账户为变异你想要的功能,这样做: 功能myparamsfunction ( param1 , param2 , param3 ) (微量( "平均" + ( param1 + param2 + param3 ) / 3 ) ; ) 如果你不知道确切数字的参数,函数会接受,使用内置式的论据阵列处理可变的参数数目。 一个函数不接受参数,一般都产生相同的结果,每次所援引的是。 但你经常需要在演出几乎完全一样的行动作为一个现有的功能,但一些小的变异。 重复整函数,然后作出轻微修改第二版是一个不错的主意,在大多数情况下。 通常,它使你的代码,努力维护和理解。 更重要的是,你通常会发现你不仅需要有两个变异,但很多变化的功能。 它可以是一个梦魇,以维持五,六年的变化是什么最好应裹成一个单一的功能。 诀窍在于建立一个单一的功能,可以接受不同的价值观操作。 举例来说,如果你有一个平均指数( )函数,你想指定任意值,以平均计算,每次所援引的是,而不考虑它总是平均相同的两个号码。 你能不能完成这个目标,用参数。 最常见的方式是与工作参数,是把他们内部的括号内,在函数声明。 参数名称应该用逗号分开,并当你引用功能,你应该通过一个逗号分隔的名单论点对应的参数,它预计。 而言, "参数"和"论据"往往交替使用,是指该变量定义在函数声明或价值,这些价值是传递给一个函数,当它被引用。 这里是一个很简单的例子,一个函数声明时使用的参数和一个函数调用,其中参数通过在函数调用: / /定义功能,例如说,它预期在两个参数: a和b 功能平均指数(甲,乙) (微量( "平均" + (一+二) / 2 ) ; ) / /当你引用的功能,通过这两个参数,如第6和第12 ,即/ /对应的a和b参数。 / /这一号召,以平均数( )显示器: "平均是9 "的平均( 6 , 12 ) ; 工作参数完全相同的方式与功能的文字表达,因为他们不点名的职能: 一般=功能(甲,乙) (含有微量( "平均是: " + (一+二) / 2 ) ; ) ; 在大多数情况下,它是最好的,以申报参数的功能应该期望。 但是,也有一些设想,其中的一些参数是未知之数。 举例来说,如果你想要的平均( )函数来平均任何数目的价值观,你可以使用内置的争论阵列,它可以在任何功能的机构。 所有参数都传递给一个函数,会自动放置到该函数的论点数组。 / /有没有需要指明参数/ /接受时,用的论据数组。 功能平均( ) (无功,结果= 0 ; / /环路,通过每一个环节的论据阵列/ /并补充说,价值的结果。 (无功i = 0 ; i < arguments.length ;一+ + ) (结果+ =论据[我] ; ) / /然后除以总人数的争论。 含有微量( "平均" +结果/ arguments.length ) ; ) / /你可以援引平均( )与任何数量的参数。 / /在这种情况下,功能将展出: "平均是7.5 " 。 平均( 3 , 6 , 9 , 12 ) ; 在技术上,争论的是一个对象而额外性能超越的一个基本数组。 然而,尽管论点,是一种特殊形式的阵列,你仍然可以与它在同一方式,你会经常数组。 这是一篇文章说,由萨文比加布里埃尔
|
|||
|