Доступ: ClassName.member (внутри static-метода — через this как конструктор).
Осторожно
Мутабельный static state — общий на весь runtime: плохо для per-request/user данных, тестов и изоляции. Часто достаточно функции уровня модуля без класса.
Итог
Static — для логики «про тип целиком». Не складывайте туда секреты и пользовательский стейт.
Альтернатива static — экспортировать рядом с классом фабричные функции из модуля. Так проще mock'ать в тестах и нет соблазна копить разделяемое мутабельное состояние на конструкторе. Static оправдан, когда API класса должно читаться как единый namespace типа.
Зачем создавать статические члены класса в JavaScript? · Sobeso