Regardez les commentaires. Vous verrez que pour les propriétés CSS, la notation par clé n'est pas compatible avec un certain nombre de propriétés. L'utilisation de la notation camel case est donc la solution actuelle :
obj.style-attr // would become
obj["styleAttr"]
Utiliser la notation de clé plutôt que le point
style["text-align"]
Tous les tableaux en JavaScript sont des objets et tous les objets sont des tableaux associatifs. Cela signifie que vous pouvez vous référer à une place dans un objet comme vous le feriez pour une clé dans un tableau.
arr[0]
ou l'objet
obj["method"] == obj.method
Quelques points à retenir lorsque vous accédez à des propriétés de cette manière :
-
ils sont évalués, donc utilisez des chaînes de caractères à moins que vous ne fassiez quelque chose avec un compteur ou que vous n'utilisiez des noms de méthodes dynamiques.
Cela signifie que obj[method] donnerait une erreur non définie alors que obj["method"] n'en donnerait pas
-
Vous devez utiliser cette notation si vous utilisez des caractères qui ne sont pas autorisés dans les variables JavaScript.
Cette regex résume assez bien la situation :
[a-zA-Z_$][0-9a-zA-Z_$]*