Как правильно использовать ООП подход в JavaScript?
Последнее время начал использовать классы в JavaScript. В первую очередь, потому что это удобно, код более структурирован.
Методы как правило делал статическими, для того, что бы их можно было вызвать на конкретном элементе. Например:
class Catalog {
static addToCart() {
// код
}
}
<button onclick="Catalog.addToCart()">Добавить в корзину</button>
И меня это устраивало, пока не наткнулся на статью, что static не поддерживается в Safari.
Выходит, мне нужно теперь не использовать статические методы и при вызове создавать экземпляр класса:
class Catalog {
addToCart() {
// код
}
}
<button onclick="const catalog = new Catalog(); catalog.addToCart()">Добавить в корзину</button>
Но мне такой код не очень нравится. Можно ли как то по другому эго писать? Поделитесь своими практиками.