Obmedzenia pre kľúče objektov v JavaScripte

Môžeme písať bez úvodzoviek nie všetky kľúče objektov, ale iba tie, ktoré spĺňajú nasledujúce obmedzenia: nemôžu začínať číslicou a nemôžu obsahovať vo vnútri pomlčku, medzeru a podobné veci.

Ak reťazec porušuje obmedzenie, potom ju musíme napísať do úvodzoviek. V nasledujúcom príklade časť kľúčov nespĺňa podmienky, a preto sú v úvodzovkách:

javascriptlet obj = {'1key': 'a', 'key-2': 'b', key3: 'c'};

K takýmto kľúčom je možné pristupovať iba pomocou hranatých zátvoriek:

javascriptconsole.log(obj['1key']);
console.log(obj['key-2']);

Taktiež prístup k takýmto názvom ako k vlastnosti objektu spôsobí chybu:

javascriptconsole.log(obj.1key);
console.log(obj.key-2);

No tretí kľúč je platný, a k nemu môžeme pristupovať oboma spôsobmi:

javascriptconsole.log(obj['key3']);
console.log(obj.key3);
Задание 1

Daný je objekt:

javascriptlet obj = {
  '1a': 1,
  'b2': 2,
  'c-c': 3,
  'd 4': 4,
  'e5': 5
};

Pre ktoré kľúče tohto objektu sú úvodzovky povinné a pre ktoré nie?

Задание 2

Opravte chyby, ktoré boli urobené v nasledujúcom kóde:

javascriptlet obj = {
  '1a': 1,
  'b2': 2,
  'c-c': 3,
  'd 4': 4,
  'e5': 5
};

console.log(obj.1a);
console.log(obj.b2);
console.log(obj.c-c);
console.log(obj.d 4);
console.log(obj.e5);