JavaScriptにおけるオブジェクトのキーの制限

オブジェクトのキーのうち引用符なしで記述できるのは、 以下の制限を満たすもののみです:数字で始まってはならず、 内部にハイフン、スペースなどの文字を含むことはできません。

文字列がこの制限に違反する場合、 引用符で囲む必要があります。 次の例では、一部のキーが条件を満たしていないため、 引用符で囲まれています:

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

このようなキーには、 角括弧を通じてのみアクセスできます:

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

また、このような名前のキーに オブジェクトのプロパティとしてアクセスしようとすると エラーが発生します:

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

一方、3番目のキーは有効であり、 どちらの方法でもアクセスできます:

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

次のオブジェクトがあります:

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

このオブジェクトのキーのうち、どのキーが引用符を 必要とし、どのキーが不要ですか?

Задание 2

次のコードの誤りを修正してください:

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