EDIT
Посмотрите на комментарии, которые вы увидите, что для свойств css нотация клавиш не совместима с рядом свойств. Использование ключевой нотации верблюжьего ключа, следовательно, является текущим способом
obj.style-attr // would become
obj["styleAttr"]
Используйте ключевые обозначения, а не точки
style["text-align"]
Все массивы в js являются объектами, а все объекты являются просто ассоциативными массивами, это означает, что вы можете ссылаться на место в объекте так же, как если бы вы ссылались на ключ в массиве.
arr[0]
или объект
obj["method"] == obj.method
пара вещей, которые нужно помнить при доступе к свойствам таким образом
они оцениваются, поэтому используйте строки, если вы не делаете что-то со счетчиком или не используете динамические имена методов.
это означает, что obj [метод] выдаст вам неопределенную ошибку
в то время как obj ["method"] не будет
Вы должны использовать это обозначение, если вы используете символы, которые не допускаются в переменных js.
Это регулярное выражение в значительной степени подводит итог
[a-zA-Z_$][0-9a-zA-Z_$]*