Objektų raktų apribojimai JavaScript

Mes galime rašyti be kabučių ne visus objektų raktus, o tik tuos, kurie atitinka šiuos apribojimus: jie negali prasidėti skaičiumi ir negali turėti savyje brūkšnelio, tarpelio ir panašių dalykų.

Jei eilutė pažeidžia apribojimą, tada ją reikia paimti į kabutes. Šiame pavyzdyje dalis raktų neatitinka sąlygų ir todėl yra kabutėse:

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

Prie tokių raktų galima kreiptis tik per laužtinius skliaustus:

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

Taip pat kreipimasis į tokius vardus per objekto savybę sukels klaidą:

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

O trečiasis raktas - leistinas, ir į jį galime kreiptis abiem būdais:

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

Duotas objektas:

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

Kuriems šio objekto raktams kabutės yra privalomos, o kuriems ne?

Задание 2

Ištaisykite klaidas, padarytas šiame kode:

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