Sekatan pada Kunci Objek dalam JavaScript

Kita tidak boleh menulis tanpa tanda kutip untuk semua kunci objek, tetapi hanya untuk kunci yang mematuhi sekatan berikut: mereka tidak boleh bermula dengan digit dan tidak boleh mengandungi sengkang, ruang dan perkara serupa di dalamnya.

Jika rentetan melanggar sekatan, ia perlu diletakkan dalam tanda kutip. Dalam contoh berikut, sebahagian kunci tidak mematuhi syarat dan oleh itu diletakkan dalam tanda kutip:

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

Kunci seperti ini hanya boleh diakses melalui kurungan siku:

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

Juga, cubaan untuk mengakses nama sedemikian melalui sifat objek akan menyebabkan ralat:

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

Namun, kunci ketiga adalah sah, dan kita boleh mengaksesnya dengan kedua-dua cara:

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

Diberi objek:

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

Untuk kunci mana dalam objek ini tanda kutip adalah wajib, dan untuk mana tidak?

Задание 2

Betulkan kesilapan yang dilakukan dalam kod berikut:

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