PDA

Volledige versie bekijken : Hulp nodig met Array


Xphire
%Europe/Berlin %957 %2005, 23:58
Beste mensen ik wil mijn array oproepen.
als AS heb ik

var userID:Array = new Array(2);
userID[0][0] = "Xphire";
userID[0][1] = "1";

en in mijn oproep code

introImage.loadMovie(userid[0][1]+".jpg");
test.text = userid[0][1];

ik krijg als tekst undefined

Dauntless
%Europe/Berlin %974 %2005, 00:23
var userID:Array = new Array(2);
userID[0] = new Array();
userID[0][0] = "Xphire";
userID[0][1] = "1";
Dat zou wél moeten werken :).

Xphire
%Europe/Berlin %985 %2005, 00:39
Prima bedankt man!
userId[0] = new Array();

is dat omdat het een 2e dementie is?
wil er ook wat van leren natuurlijk ;)

Dauntless
%Europe/Berlin %986 %2005, 00:41
wil er ook wat van leren natuurlijk ;)
Goede houding :D

Je wil idd een array van arrays, dus moet je in de hoogtste array van elk element een nieuwe array maken :).

Xphire
%Europe/Berlin %990 %2005, 00:46
dan snap ik em :) bedankt voor deze info _o_

Laiverd
%Europe/Berlin %367 %2005, 09:49
... omdat het een 2e dementie is?
... ik mag toch hopen van niet :D

http://www.psychowijzer.nl/Dementie/Dementie.htm

Xphire
%Europe/Berlin %449 %2005, 11:47
oei :p ik krijg nogsteeds aan undefined :$ vergeten te testen (shame)

ik heb nu :
var userID:Array = new Array(2);
userID[0] = new Array();
userID[0][0] = "Xphire";
userID[0][1] = "1";

en in de layer daaronder:

planetImage.loadMovie(userID[0][0] + ".jpg");
test.text = userID[0][0];

ik krijg undefined tekst en plaatje is undefined. Ik snap em nu niet meer

Fatty Owl
%Europe/Berlin %456 %2005, 11:57
dit is even een offtopic vraagje, maar als ik een array aanmaak doe ik het zo: var userID = {}Welke manier is nu eigenlijk beter?

Dauntless
%Europe/Berlin %462 %2005, 12:06
dit is even een offtopic vraagje, maar als ik een array aanmaak doe ik het zo: var userID = {}Welke manier is nu eigenlijk beter?
Euhm, jij maakt nu een object aan.
Een array maak je aan met []; ;)

Laiverd
%Europe/Berlin %464 %2005, 12:08
Op die manier maak je een object aan een geen array.

var plop = [];
trace(plop instanceof Array); // true
var plop = {};
trace(plop instanceof Array); // false
trace(plop instanceof Object); // true

Wat beter is? Korter is altijd beter in termen van programma efficientie, maar vaak niet overzichtelijker.

John

Ah, snelle Arie was me weer eens voor ;)

Fatty Owl
%Europe/Berlin %464 %2005, 12:09
Euhm, jij maakt nu een object aan.
Een array maak je aan met []; ;)
sorry ik ben nog maar pas bezig met die dingen :# . welke is dan beter? (die met [] of met new array())?
want ik wil niet weer foute dingen leren 8~

Roenes
%Europe/Berlin %465 %2005, 12:09
Vreemd dat het niet werkt want met je array is niets fout, kijk maar:

var userID:Array = new Array(2);
userID[0] = new Array();
userID[0][0] = "Xphire";
userID[0][1] = "1";
trace(userID[0][0]);
trace(userID[0][1]);
Dat levert de gewenste output. Zit er misschien een foutje in je scoping of zo? :)

Roenes
%Europe/Berlin %466 %2005, 12:12
welke is dan beter? (die met [] of met new array())Maakt volgens mij niet uit. Dit levert namelijk hetzelfde resultaat:

var arr = new Array();
var arr2 = [];
trace(arr instanceof Array);
trace(arr2 instanceof Array);
Ze worden allebei als array gezien dus een echt verschil zit er geloof ik niet in. Alleen met de [] notatie kun je makkelijk en overzichtelijk in 1 regel een 2D of 3D of wat dan ook maken.

Hetzelfde geld ook voor de notatie van Object. of je dat doet met {} of new Object maakt ook nie zoveel uit :)

Xphire
%Europe/Berlin %468 %2005, 12:14
Vreemd dat het niet werkt want met je array is niets fout, kijk maar:

var userID:Array = new Array(2);
userID[0] = new Array();
userID[0][0] = "Xphire";
userID[0][1] = "1";
trace(userID[0][0]);
trace(userID[0][1]);
Dat levert de gewenste output. Zit er misschien een foutje in je scoping of zo? :)
wat is scoping ? en hoe kreeg ik ook al weer die debug gebeuren zodat ik me traces kan zien.

Dauntless
%Europe/Berlin %471 %2005, 12:18
Op ctrl + Enter drukken ?

Laat eens de volledige code zien van waar je je array maakt en waar je er iets uit opvraagt.

Xphire
%Europe/Berlin %497 %2005, 12:56
ik liet net me volledige code zien. het is niet meer dan dat.
dus :

var userID:Array = new Array(2);
userID[0] = new Array();
userID[0][0] = "Xphire";
userID[0][1] = "1";

en in de layer daaronder:

planetImage.loadMovie(userID[0][0] + ".jpg");
test.text = userID[0][0];

Dauntless
%Europe/Berlin %510 %2005, 13:15
Waarom heb je die twee regeltjes in een andere layer gezet?

Xphire
%Europe/Berlin %536 %2005, 13:52
odmat als ik en verbind met de database kan ik die ene layer verwijderen :p

Dauntless
%Europe/Berlin %540 %2005, 13:58
Maar werk thet als je die twee regels nu bij die andere layer bij zet?

Xphire
%Europe/Berlin %544 %2005, 14:04
nee het werkt dan ook niet. Super raar dit :p

Roenes
%Europe/Berlin %545 %2005, 14:05
Zet eens even je fla online. Dat zoekt wat makkelijker :)

Xphire
%Europe/Berlin %553 %2005, 14:16
Zet eens even je fla online. Dat zoekt wat makkelijker :)
http://home.planet.nl/~schni063/testgame.fla daar is ie dan :)

Dauntless
%Europe/Berlin %555 %2005, 14:19
en in de layer daaronder:

planetImage.loadMovie(userID[0][0] + ".jpg");
test.text = userID[0][0];
Nee, dat staat in de layer ERBOVEN. Verwissel die twee layers van plaats!

Xphire
%Europe/Berlin %562 %2005, 14:29
lolz :) ik zie het al. en flash lite ondersteunt geen arrays zo te zien? want daar deet hij het totaal niet op

Laiverd
%Europe/Berlin %643 %2005, 16:27
Inderdaad: Flash Lite > Flash 4 actionscript. Arrays moet je dan faken.