Если брать реальные примеры, то как правило ты будешь записывать в статические свойства какие-нибудь атрибуты, присущие для всех инстансов класса
Реакт, например, использует статические атрибуты propTypes и defaultProps для валидации входящих параметров и фоллбэка на дефолтные значения
Также, если у тебя например есть компонент Button, которые имеет несколько размеров, то ты можешь вынести енум размеров в статический параметр, сделав таким образом константу
Например:
class Button extends Component {
...
}
Button.sizes = {
LARGE: 'l',
MEDIUM: 'm',
SMALL: 's'
};
Статические методы могут нести в себе какую-нибудь вспомогательную логику, типа примера выше с Math.random, а могут быть также хелперами для создания инстанса класса
Например
class Human {
constructor(sex) {
this.sex = sex;
}
static asFemale() {
return new Human('female');
}
}
console.log(Human.asFemale());
// Human {sex: "female"}