Логика очень простая. В javascript имена не могут содержать ничего, кроме _, букв и $. Так сложилось, что вещи, которые в «обычной природе» мы пишем через тире (оно же дефис, черточка и минус) (некоторые CSS свойства, HTML атрибуты), тут нужно писать по правилу -ab-cd
= AbCd
, то есть, отбрасывать тире, а букву, следующую за ним, возводить в верхний регистр.
Примеры:
border-width
- borderWidth
,
-moz-transform
- MozTransform
,
data-tag-for-title
- dataset.tagForTitle
.