"As classes foram implementada no JS justamente para facilitar para programadores vindos de linguagens OO, e hoje por uma questão de boas práticas são mais usada do que a função construtora."
Javascript também é uma linguagem orientada a objetos e a utilização de classes não é por ser uma boa prática mas sim por que é uma forma mais popular em expressar a orientação a objetos devido a outras linguagens de mercado.
No geral as funções construtoras são mais flexíveis e poderosas do que a utilização de classes por que você pode compor objetos com mais facilidade e de uma forma mais clara, principalmente devido ao recurso de mixins e por serem simplesmente funções. As classes são apenas um açucar sintático para dar mais comodidade para quem vem de outras linguagens, mas em troca você perde um pouco de toda expressividade do JS.