Actionscript 3 ActionScript 3.0中的默认参数
例如,我有一个函数 功能测试(p1:int=7,p2:Boolean=true,p3:uint=0xffff00,p4:Number=55.5) {Actionscript 3 ActionScript 3.0中的默认参数,actionscript-3,Actionscript 3,例如,我有一个函数 功能测试(p1:int=7,p2:Boolean=true,p3:uint=0xffff00,p4:Number=55.5) { //说明 } 例如,如何更改仅p4,参数p1、p3、p3仍然是默认值? 下次我想更改,例如,仅更改p2,参数p1、p3、p4仍然是默认值 等等。你不能。可以省略p3和p4,当您只想指定p2时,它们将使用默认值。但是,您还必须为p1输入一个值。您可以随时执行以下操作(但我认为这不是一个好主意): 这样,如果您希望某些内容成为默认值,则只需传入null
//说明
} 例如,如何更改仅p4,参数p1、p3、p3仍然是默认值?
下次我想更改,例如,仅更改p2,参数p1、p3、p4仍然是默认值
等等。你不能。可以省略p3和p4,当您只想指定p2时,它们将使用默认值。但是,您还必须为p1输入一个值。您可以随时执行以下操作(但我认为这不是一个好主意): 这样,如果您希望某些内容成为默认值,则只需传入null: 与:
但同样,这是个坏主意。也许可以将参数设置为一个对象--听起来像是传入了一个colortransform对象--它已经具有rgb+alpha+透明度了?(胡乱猜测)这是个好主意。一切都好。我将函数类中的:void替换为:数组,并在函数中写入行返回[p1,p2,p3,p4];下一个调用函数跟踪(test(null,false,null,125));一切都很棒。非常感谢。
private function test(a1:Object=null, a2:Object=null, a3:Object = null, a4:Object = null):void {
var p1:int = (a1 !== null ? int(a1) : 3);
var p2:Boolean = (a2 !== null ? Boolean(a2) : true);
var p3:uint = (a3 !== null ? uint(a3) : 0xFFFF00);
var p4:Number = (a4 !== null ? Number(a4) : 55.5);
}
test(null,false,null,null);