| Autor | Zpráva | ||
|---|---|---|---|
| Timy Profil |
#1 · Zasláno: 2. 7. 2008, 19:35:58 · Upravil/a: Timy
Potřeboval bych vytvořit objekt podle předané proměnné. Nechci to pokud možno dělat přes switch/case, ale nějak takhle:
function hokusPokus(objectName:String):Car
{
var myObject:Car;
myObject = new objectName(argumenty);
return myObject;
}Akorát že s tím rozdílem, že se nevytvoří instance objectName, ale nejprve se vyhodnotí objectName a až poté se vytvoří instance objektu. Příklad volání: hokusPokus("Ferrari");Tento kód by měl vrátit objekt typu „Ferrari“. Jde to nějak zařídit? ActionScript 2. |
||
|
Časová prodleva: 3 dny
|
|||
| embee Profil |
#2 · Zasláno: 5. 7. 2008, 11:28:39
zkus to zabalit do [] a nebo pouzit eval(), ale covece nevim, tohle se mi moc nepozdava....
|
||
| Timy Profil |
#3 · Zasláno: 5. 7. 2008, 11:57:19
embee
Už jsem to vyřešil jinak a čistěji. Předávám už hotový objekt jako argument. |
||
| mila Profil |
#4 · Zasláno: 5. 7. 2008, 13:46:13
Můžeš předávat constructor místo názvu třídy, tohle například funguje:
var f:Function = flash.filters.GlowFilter; trace(f); o = new f; trace(o) V tvém příkladu: function hokusPokus(objectName:Function):Car
{
var myObject:Car;
myObject = new objectName(argumenty);
return myObject;
}
hokusPokus(my.package.Ferrari);
|
||
|
Časová prodleva: 18 let
|
|||
0