Проще говоря, это невозможно. Самое близкое, что вы можете получить, это номер аргумента и значение. Смотрите ниже:
function fct(... args):void {
for (var v:Object in args) {
trace(v + ": " + args[v]);
}
}
var str1:String = "this is a test";
var str2:String = "this is another test";
fct(str1, str2);
//output
//0: this is a test
//1: this is another test
Для дальнейшего использования, вы можете использовать ...
+ имя переменной, чтобы столько аргументов, сколько вам нужно. Независимо от того, вам нужно просто получить доступ к args[ INDEX ]
, а не к фактическому имени переменной, к которому вы не сможете получить доступ, так как не было возможности применить область действия (например, variableName[ "propertyName" ]
)
вы можете использовать describeType - http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/utils/package.html#describeType() - хотя вам может понадобиться включить функцию fct в class first (возможно) – 2013-03-22 17:35:03
Я не думаю, что экземпляры функций работают как другие экземпляры класса. –