A JavaScript objektumok kulcsaira vonatkozó korlátozások

Nem minden objektum kulcsot írhatunk idézőjelek nélkül, csak azokat, amelyek megfelelnek a következő korlátozásoknak: nem kezdődhetnek számjeggyel, és nem tartalmazhatnak kötőjelet, szóközt vagy hasonló karaktereket.

Ha egy sztring megsérti a korlátozást, akkor azt idézőjelek közé kell tenni. A következő példában egyes kulcsok nem felelnek meg a feltételeknek, ezért idézőjelek között állnak:

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

Az ilyen kulcsokhoz csak szögletes zárójeleken keresztül lehet hozzáférni:

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

Az ilyen nevű kulcsokhoz történő hozzáférés az objektum tulajdonságaként hibához vezet:

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

Viszont a harmadik kulcs megengedett, és ahhoz mindkét módon hozzáférhetünk:

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

Adott egy objektum:

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

Mely kulcsoknál kötelezőek az idézőjelek és melyeknél nem?

Задание 2

Javítsa ki a következő kódban elkövetett hibákat:

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);