Правильный ли подход использования ООП в JS?
Хитрая штука, этот ваш ООП.
Процитирую прям сюда первые две строки:Объе́ктно-ориенти́рованное программи́рование (ООП) — парадигма программирования, в которой основными концепциями являются понятия объектов и классов. В случае языков с прототипированием вместо классов используются объекты-прототипы.
И уже из следующей статьи:Прототипное программирование — стиль объектно-ориентированного программирования, при котором отсутствует понятие класса, а наследование производится путём клонирования существующего экземпляра объекта — прототипа.
Вот такой он внезапный, ООП без классов.
Хотя если хочется классы, в сети куча инструкций как эмулировать их в js.
Все так. Только ООП в JS есть и было без эмуляции «классического» наследования:) ООП !== классы.