JavaScript'te Nesne Anahtarları Üzerindeki Kısıtlamalar

Tırnak işaretleri olmadan yazabileceğimiz nesne anahtarları, yalnızca şu kısıtlamaları karşılayanlardır: rakamla başlayamazlar ve içlerinde tire, boşluk ve benzeri şeyler bulunduramazlar.

Eğer bir dize kısıtlamayı ihlal ediyorsa, tırnak içine alınmalıdır. Aşağıdaki örnekte bazı anahtarlar koşulları sağlamadığı için tırnak içindedir:

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

Bu tür anahtarlara yalnızca köşeli parantezler aracılığıyla erişilebilir:

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

Ayrıca, bu tür isimlere nesne özelliği üzerinden erişmek hataya yol açacaktır:

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

Ancak üçüncü anahtar geçerlidir ve ona her iki yolla da erişebiliriz:

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

Bir nesne verildi:

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

Bu nesnenin hangi anahtarları için tırnak işaretleri zorunludur, hangileri için değildir?

Задание 2

Aşağıdaki kodda yapılan hataları düzeltin:

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