Volledige versie bekijken : Objecten koppelen
FlashElements
%Europe/Berlin %490 %2006, 11:46
Hallo mede Flashers,
var obj1:Object = {a:"AA", b:"BB"};
var obj2:Object = {b:"BB", c:"CC"};
/* obj1 in obj2 stoppen */
trace(obj2.b); // ouput: BB
trace(obj2.a); // ouput: AA
iemand enig idee hoe ik dit kan realiseren ?
FlashElements
Macs
%Europe/Berlin %520 %2006, 12:29
Bedoel je zoiets?
var object = new Array();
object["obj1"] = Array();
object["obj1"]["a"] = "AA";
object["obj1"]["b"] = "BB";
object["obj2"] = Array();
object["obj2"]["b"] = "BB";
object["obj2"]["c"] = "CC";
trace(object['obj2']['b']); // ouput: BB
waldo_cosman
%Europe/Berlin %520 %2006, 12:29
obj1 meegeven in obj2
obj2.obj1 = obj1
obj2.obj1.a
FlashElements
%Europe/Berlin %593 %2006, 14:14
Bedoel je zoiets?
var object = new Array();
object["obj1"] = Array();
object["obj1"]["a"] = "AA";
object["obj1"]["b"] = "BB";
object["obj2"] = Array();
object["obj2"]["b"] = "BB";
object["obj2"]["c"] = "CC";
trace(object['obj2']['b']); // ouput: BB
Nou volgens mij kun je nu niet "AA" opvragen in obj2
dan zou je het zo moeten doen:
var obj1:Object = {a:"AA", b:"BB"};
var obj2:Object = new Object(obj1);
obj2.c = "CC";
obj2.d = "DD";
trace(obj2.a); // output: AA
Maar ik heb nu 2 objecten obj1 en obj2.
Ik wil gewoon obj1 in obj2 stoppen. Zonder achteraf nog obj2 nog te voorzien van variabelen
Idee van Waldo is ook wel een mogelijkheid maar dan zit obj1 er weer tussen :(
Macs
%Europe/Berlin %610 %2006, 14:38
ik had je niet heel goed begrepen, denk ik maar wat waldo zegt is eigenlijk hetzelfde als wat ik schrijf, alleen via een andere schrijfwijze, als je wil dat dat alle gegevens van obj2 in obj1 kun je het idd doen zoals waldo schijft, maar je kan ook loopen door de gegevens in obj1 en deze in obj2 zetten:
var obj1 = new Array();
obj1['a'] = "aa";
obj1['b'] = "bb";
var obj2 = new Array();
obj2['b'] = "bb";
obj2['c'] = "cc";
for(var i in obj1){
obj2[i] = obj1[i];
}
for(var i in obj2){
trace(i+'='+obj2[i]);
}
FlashElements
%Europe/Berlin %612 %2006, 14:41
oke, dus dan ben ik gebonden aan een lus.... wel jammer dat je niet iets van
obj2.add(obj1) kunt gebruiken :(
Maar ik probeer het maar even op deze mannier,
bedankt jongens !!!!
Roenes
%Europe/Berlin %715 %2006, 17:09
Als je echt objecten van het type Object gebruikt dan wordt het lastig, maar als je een associatieve array gebruikt (wat uiteindelijk gewoon een object in Flash is) kun je dan niet met de concat() functie van de Array classe werken? :)
Ik heb het niet getest of zo, maar dat schoot me te binnen toen jij obj2.add(obj1) typte :) Wellicht kun je met concat (of 1 van de andere array methodes) hetgeen bereiken wat je wilt :)
Macs
%Europe/Berlin %717 %2006, 17:13
volgens mij kun je dat hier niet doen omdat dit een hash is, maar ik moet je eerlijk zeggen dat ik niet precies weet hoe een hash in flash geconstrueerd is..:S
vBulletin® v3.8.1, Copyright ©2000-2012, Jelsoft Enterprises Ltd.