Uordenethet av objekter i JavaScript
Som du allerede vet, i arrays er elementer plassert i streng rekkefølge, fordi posisjonen til hvert element bestemmer dens nøkkel. I objekter tildeler vi selv nøklene, derfor har rekkefølgen av elementene ingen betydning. Det vil si at arrays er ordnede lister, mens objekter ikke er det.
La oss se på et eksempel med dette objektet:
let obj = {1: 'a', 2: 'b', 3: 'c'};
console.log(obj[1]); // vil skrive ut 'a'
console.log(obj[2]); // vil skrive ut 'b'
console.log(obj[3]); // vil skrive ut 'c'
Hvis vi omorganiserer elementene i dette objektet i en tilfeldig rekkefølge (selvfølgelig, sammen med deres nøkler), vil ikke dette endre noe i hvordan skriptet vårt fungerer:
let obj = {3: 'c', 1: 'a', 2: 'b'};
console.log(obj[1]); // vil skrive ut 'a'
console.log(obj[2]); // vil skrive ut 'b'
console.log(obj[3]); // vil skrive ut 'c'
I tillegg trenger ikke numeriske nøkler å ha alle verdier uten hull, slik som i et array. Vi kan ha vilkårlige tall og dette vil ikke føre til noen problemer (lignende sparsomhet i arrays). Derfor er følgende objekt korrekt:
let obj = {7: 'a', 50: 'b', 23: 'c'};
Opprett et objekt og forsikre deg om at rekkefølgen av nøkler i det ikke har noen betydning.