Nested Array PDF Skriv ut Skicka sidan
2009-12-04 23:40

Nested array - Ett sätt att strukturera data.

Strukturerad data kan man även säga om XML, medans XML är ju riktigt populärt att ladda extern för intern användning men inte lika vanligt för att skapa internt för intern användning.

Nu vet jag tyvärr inte varför det inte används XML i såna fall, men jag vet att Nested Array är väldigt populär (hos vissa programmerare), bla.a mig.

 

Tidigare använde jag aldrig nested array till jag satte mig ner och gick genom  för att testa dess användningsområde.

Säg att du har  en array (föreställ ett hus) och en andra arrayer innuti den (våningar) och ytterligare arrayer i det sist nämda (lägenheter).

Strukturen i XML skulle se ut något sådant:

<hus>
    <vaning id="1">
        <lgnhet id="1">Ace</lgnhet>
        <lgnhet id="2">Patric</lgnhet>
        <lgnhet id="3">Calle</lgnhet>
    </vaning>
    <vaning id="2">
        <lgnhet id="1">Richard</lgnhet>
        //---- osv.....
    </vaning>
</hus>

Det vore ju ett sätt att strukturera data i AS3, men att skriva en sådan funktion som skapar sådan XML kan ta lite mer tid än Nested Array. Säg att man vill komma åt data (Calle), så måste man först gå till våning 1 och lägenhet 3, då får man ut Calle.

Samma sak i nested array skulle se ut något så:

var hus:Array = []; //skapa en huvudarray
//Första våningen
var vaning:Array = [] //skapa en ny array
vaning.push("Ace"); // sätt in data i arrayen
vaning.push("Patric");
vaning.push("Calle");
hus.push(vaning); // lägg till det i huvudarray (i huset)
//Andra våningen gör samma sak igen
var vaning2:Array = [];
vaning2.push("Richard");
vaning2.push("Danel");
vaning2.push("WebbHelp");
hus.push(vaning2); //lägg till det i huset

trace(hus[1][1]);  // ger Danel

Samma sak kan man göra på olika sätt, så här kommer min favorit:

var hus:Array = []; //skapa en huvudarray
//Första våningen
hus[0] = [] //skapa en ny array av första positionen av huset
hus[0].push("Ace"); // sätt in data i arrayen
hus[0].push("Patric");
hus[0].push("Calle");
hus.push(hus[0]); // lägg till det i huvudarray (i huset)
//Andra våningen gör samma sak igen som ovan
hus[1] = [] // skapar ny vångings array av andra våningen
hus[1].push("Richard");
hus[1].push("Danel");
hus[1].push("WebbHelp");
hus.push(hus[1]); //lägg till det i huset

trace(hus[1][1]);  // ger Danel
trace(hus[0][1]); // ger Patric

En array är ju positioner [0], [1], [2]... osv och varje sådan position kan innehålla ytterligare en array som man når med [0][0], [0][1], [0][2] och [1][0], [1][1], [1][2]... osv.

Vad jag hört (och inte upplevt själv ännu) är att denna metod kan sega ner projektet lite. Men om man inte har 10-tals olika array dit man sätter ytterligare 10-tals arrayer så är det  nog lugnt. Märker du att ditt projekt blir segt så vet du varför.

Vet du iofs annan anledning varför man INTE ska använda nested array, skriv gärna en kommentar och förklara varför.

Sökord: Nested array, strukturerad data, array i array, arrayer, data, XML


Bedöm artikeln:
( 1 Bedömning )
Skapad 2009-12-04 23:40 av Danel Kirch

Visad 1703 gånger än så länge.

Senaste artiklarna av Danel Kirch


Senast uppdaterad 2010-03-03 23:21

Kommentarer  

 
+2 #1 Danel Kirch 2009-12-15 12:32
Neat kommentar här för test
Citera
 
 
+1 #2 Mikael Palm 2009-12-15 12:33
Citerar Danel Kirch:
Neat kommentar här för test


Plus 1 för den kommenteren
Citera
 
 
0 #3 Patric Jonsson 2009-12-16 07:57
Citerar Danel Kirch:
Neat kommentar här för test

En till puss.... eeeh.. plus
Citera
 

Lägg till kommentar


Medlemmar


Members Online: 0

Senaste registrerade

LisaRaichand : 22 april 2012 19:55pilu : 31 januari 2012 09:58Gostship99 : 07 januari 2012 19:37Director : 18 november 2011 05:44Dahlback : 17 november 2011 16:28mikwonwheels : 14 november 2011 13:20Kviddis : 04 oktober 2011 19:53buddha1966 : 25 september 2011 14:22idesign : 20 september 2011 08:45TxT : 05 september 2011 11:07ApelG : 05 september 2011 11:04
Partners
Adobe user group
fdt5-logo
TechSmith
Lynda user group
Apress user group
O´reilly user group
Peachpit user group
Friends Of Ed
Manning user group


Senaste blogginläggen

Av: Danel
-20.02.2012
Av: Patric Jonsson
-27.01.2012
Av: Patric Jonsson
- 3.01.2012
Av: Patric Jonsson
-29.11.2011
Av: Danel
-26.11.2011
Av: Patric Jonsson
-14.11.2011
Av: Patric Jonsson
- 8.11.2011
Av: Danel
- 7.11.2011
Av: Patric Jonsson
-27.09.2011

Senaste kommentarer

Senaste trådarna

Av Hallon
- 08/05/2012
Av goldensebbe
- 06/04/2012
Av Hallon
- 29/03/2012
Av buddha1966
- 06/03/2012
Av buddha1966
- 29/02/2012
Av Wide Circle
- 20/02/2012
Av zocstyle
- 15/02/2012
Av ufoalf30
- 05/01/2012
Av peterdavidsson
- 08/12/2011
Av JohnPaulie
- 03/12/2011
Av coffaldo
- 17/11/2011
Av buddha1966
- 05/11/2011
Av buddha1966
- 03/11/2011

Blogkalender

  • 2012 (3)
  • 2011 (37)
  • 2010 (85)
  • 2009 (18)
  • Vem är online

    Vi har 1435 besökare online
    RSS
    Danel Kirch
    RocketTheme Joomla Templates