Todos los lenguajes tienen sus ventajas y desventajas.
Cada lenguaje tiene una forma de lidiar con sus desventajas.
En java mucha de las “buenas practicas” que la comunidad señala para programar bien… tienen que ver con subsanar malas definiciones en el standard inicialmente. O cuando surge un framework mejor que el standard Java lo adopta como standard en las versiones posteriores.
Javascript tiene una gran ventaja .. que es la escalabilidad horizontal y eso va muy bien con los sistemas de hoy, distribuidos y con empresas que empiezan con 500 usuarios y de un dia al otro quieren estar preparadas para 20.000.000
Esa caracteristica suple el hecho de que javascript fue diseñado para electrodomesticos. Entonces se inventan y se producen un monton de frameworks y dialectos que suplpen esa falencia. Se apuntala el lenguaje y se sigue para adelante.
Por eso lo imortante no es que el lenguaje sea el mejor sino las ventajas competitivas y principalmente cuanta gente lo “habla”