Utilisation de touches entières avec une notation par points pour accéder à la propriété dans les objets javascript

Pourquoi ne pouvons-nous pas utiliser des clés entières dans l'expression de points pour accéder aux valeurs de propriété?

var obj = {1: 'one', two: '2'} console.log(obj.1) // error console.log(obj.two) 

Dans le cas d'une notation par points pour accéder à une valeur, la clé de propriété doit être un identifiant valide

Dans ce code, la propriété doit être un identifiant JavaScript valide, c'est-à-dire une séquence de caractères alphanumériques, y compris le soulignement ("_") et le signe dollar ("$"), qui ne peut pas commencer par un nombre. Par exemple, l'objet. $ 1 est valide, alors que l'objet 1 n'est pas.

Vous pouvez utiliser la notation de bracket dans ce cas

 obj['1'] 

Spécifications: Propriété Accessors

C'est un principe principal de JavaScript qui indique que les variables ne peuvent pas commencer par un nombre. Par ici, la propriété est une variable et, par conséquent, elle ne peut pas commencer par un nombre.

Vous pouvez vérifier plus sur les règles de définition de variable ici

J'espère que cela t'aides.