Neusporiadanosť objektov v JavaScripte

Ako už viete, v poliach sú prvky usporiadané v prísnom poradí, pretože pozícia každého prvku určuje jeho kľúč. V objektoch si kľúče priraďujeme sami, preto poradie prvkov nehrá žiadnu úlohu. To znamená, že polia sú usporiadané zoznamy, kým objekty nie sú.

Príkladom uvažujme nasledujúci objekt:

javascriptlet obj = {1: 'a', 2: 'b', 3: 'c'};

console.log(obj[1]); // vypíše 'a'
console.log(obj[2]); // vypíše 'b'
console.log(obj[3]); // vypíše 'c'

Ak preusporiadate prvky tohto objektu v ľubovoľnom poradí (samozrejme, spolu s ich kľúčmi), nič sa na fungovaní našho skriptu nezmení:

javascriptlet obj = {3: 'c', 1: 'a', 2: 'b'};

console.log(obj[1]); // vypíše 'a'
console.log(obj[2]); // vypíše 'b'
console.log(obj[3]); // vypíše 'c'

Okrem toho, číselné kľúče nemusia mať všetky hodnoty bez medzier, podobne ako pole. Môžeme mať ľubovoľné čísla a to nespôsobí žiadne problémy (podobne ako rozptýlenosť u polí). Preto je nasledujúci objekt korektný:

javascriptlet obj = {7: 'a', 50: 'b', 23: 'c'};
Задание 1

Vytvorte objekt a presvedčte sa, že poradie kľúčov v ňom nemá význam.