Nota: Esta pregunta fue reformulada por lo mi respuesta refleja la pregunta inicial pero fue sumando.
Absolutamente. Jquery IS Javascript y si bien abstrae muchas de las discrepancias de DOM entre navegadores, una sigue siendo propensa a los mismos errores de análisis exactos, malentendidos de alcance, etc.
Usar jQuery sin conocer el conocimiento básico de DOM o el conocimiento necesario de Javascript es lo que consideraría peligroso, como darle una pistola muy potente a un niño que podría dispararse accidentalmente en el pie sin saber cómo usar un instrumento tan poderoso herramienta de la manera correcta.
Una persona que se enseña directamente con jQuery no tendría absolutamente ninguna idea de cómo depurar problemas si el error que se está lanzando se refiere a algo en el DOM. Para algo tan simple como comparar para ver si un elemento es un elemento más (para cosas como el estado actual), que intentarían algo quizás como:
if ($('a.current') == $('a.current')) { }
cual se devolvía falsa ya se crean dos objetos únicos jQuery. Si hubieran sabido cómo obtener la referencia a los nodos DOM, podrían haberlo hecho $('#el')[0] == $('#el')[0]
.
Cada vez que utilice un plugin de jQuery y se encuentre con un comportamiento misterioso, sin el conocimiento de DOM, tendrá que depender de otra persona para que lo ayude. Los desarrolladores con conocimiento de DOM tendrían más capacidad para depurar y conocer la raíz del problema, por lo que solo te estás preparando para perder más tiempo rascándote la cabeza desconcertado en jQuery.
Además, si uno desea llegar a un alto nivel de conocimiento y no solo ser un desarrollador de joe jQuery ordinario, entonces necesitaría un vasto conocimiento de las discrepancias DOM y Javascript en general; de lo contrario, está limitando su nivel de habilidad por un gran margen.
Si te quedas cerca de Stackoverflow por un tiempo, verás esto en las preguntas diarias, en las que las personas que tomaron el atajo fácil carecen del conocimiento básico de JS/DOM necesario para resolver sus problemas.
¿Está obsoleto el conocimiento de la arquitectura de la CPU dada la disponibilidad de lenguajes de scripting? –
Necesita ese conocimiento para diseñar mejor sus algoritmos. – Lockhead
¿Debe un desarrollador profesional estar dependiendo de otros desarrolladores y debe confiar en que no lo haga? –