JavaScript

Associativa arrayer

Arrayerna vi har tittad på hittills är numeriska arrayer, eftersom de använder indexsiffror från 0 och uppåt. Som du såg i artikeln kan det lätt bli förvissande när länga arrayer ska hänvisa till varandra.

Ett alternativ till att använda indexsiffror är då att använda en textsträng som index. Denna typ av array kallar man associativa arrayer.

Vi kan fortsätta på exemplet från förra sidan och jobba vidare med Motorhead. Vi börjar med att göra en array för Lemmy:

var lemmy = Array();
lemmy["efternamn"] = "Kilmister";
lemmy["foedd"] = 1945;
lemmy["nuvarande"] = true;

Fördelen med detta skulle jag tro är uppenbar. I stället för att hålla reda på siffrorna, kan du hänvisa till logiskt namngivna data.

Om jag nu skulle vilja lägga in hela arrayen för Motorheads basist/sångare som medlem i en array som heter Motorhead skulle det kunna se ut så här:

var motorhead = Array();
motorhead[0] = lemmy;

Nu kan vi få fram olika data om Lemmy utan att förvirras av siffrorna. motorhead[0]["efternamn"] är ju lika med "Kilmister", motorhead[0]["foedd"] är 1945 och motorhead[0]["nuvarande"] är sant (true). Vi kan få det ännu mer begripligt om vi byter ut indexsiffrorna i arrayen motorhead mot beskrivande namn:

var motorhead = Array();
motorhead["basist"] = lemmy;

Nu är värdet på motorhead["basist"]["efternamn"] lika med "Kilmister", motorhead["basist"]["foedd"] är 1945 och motorhead["basist"]["nuvarande"] är sant (true). Nu blir det enkelt att ställa frågan när Motorheads basist är född: