2009-11-30 10 views
17

Recientemente descubrí jQuery, y puedo ver de inmediato lo útil y elegante que es.¿Hay alguna buena razón para NO utilizar jQuery en lugar de JavaScript antiguo?

Tengo curiosidad, sin embargo, ¿hay alguna razón para NO usarlo (y simplemente usar JavaScript antiguo simple en su lugar)? Si no hay ningún motivo, ¿no debería integrarse completamente en el lenguaje de JavaScript?

+3

Pregunta similar: http://stackoverflow.com/questions/471597/is-jquery-always-the-answer –

+2

Me recuerda a las ¿Hay alguna buena razón para NO utilizar la pregunta de control de versión ... ;-) – MiseryIndex

+2

Quiero votar para cerrar como "subjetivo y argumentativo" pero no puedo apretar el gatillo por alguna razón. Creo que la pregunta tiene sus méritos, pero tal vez debería haber sido wiki de la comunidad, ya que es una encuesta. –

Respuesta

14

¿Hay alguna razón para no usarlo

  • Hay mejores bibliotecas.
  • Se añade peso de la página (y para proyectos pequeños que el peso es a menudo más costoso entonces los beneficios)

caso de no ser plenamente integrada en el lenguaje Javascript?

La mayor parte de lo que hace jQuery está más relacionado con el DOM que con JavaScript.

+9

"Hay mejores bibliotecas" - ¿recomendaciones? (Sé que es subjetivo, pero aún así) – orip

+0

Tengo curiosidad, también. – MiseryIndex

+0

Estaba deliberadamente no siendo específico porque es subjetivo (y sensible al contexto) – Quentin

18

Si no utiliza realmente ninguna de las características de jQuery, no hay ninguna razón para introducir el peso de la página en su sitio. Si usa alguna de las funciones, probablemente no haya una buena razón para rodar su propia versión, excepto para fines de aprendizaje.

+0

+1: a menudo un sitio puede necesitar solo un pequeño JavaScript para comenzar, que uno puede rodar por sí mismo. A medida que crezca el deseo/requerimiento de hacer más del lado del cliente, uno puede encontrar que necesita escribir más y más JavaScript y es en este punto que mirar una biblioteca de JavaScript ahorrará tiempo de desarrollo, dolores de cabeza entre navegadores y la necesidad de escribe todo el código –

+0

@Russ Cam: (resaltando una vista para la discusión): incluso con un poco de JavaScript, ¿por qué esperar? El 99% de las veces, no es como agregar la referencia de lib de JS es difícil, o que otra solicitud de HTTP de 20 kb es * realmente * lo que impactará el rendimiento del lado del cliente de la página – orip

8

Me encanta jQuery también - por lo que no me mal ... pero como abogado del diablo:

  • No todo el mundo en su equipo sabe jQuery, por lo que estaría en un aprieto si heredaron su funciona
  • No todo el mundo siente que jQuery es la mejor biblioteca JavaScript (más de un argumento en contra de hacer jQuery sinónimo de JavaScript)

dicho esto, yo personalmente considero que se debe utilizar una biblioteca JavaScript (presumiblemente jQuery) en lugar que recrear el comportamiento equivalente w con JavaScript. Es la biblioteca más popular y podría ser más legible/mantenible que el JavaScript enrollado a mano.

+5

Creo que a menudo estarían en un aprieto si Has rodado tus propios trucos de UI. jQuery probablemente tenga una mejor oportunidad de trabajar correctamente entre navegadores que tu (bueno, "mi" al menos) código propio. –

+1

+1 por la primera razón. Es la verdad ... algunas personas se dejan intimidar por la sintaxis y simplemente nunca parecen abrazarla. – demongolem

5

Muchas razones malas. Dos buenos:

  1. No lo necesita. Hay muchas cosas que puede querer hacer con JavaScript que no requieren o se benefician particularmente de jQuery.
  2. Usted no lo quiere. Personalmente, creo que jQuery es fantástico. Conjuntos, cadenas de funciones, sintaxis concisa ... todo me hace feliz. Pero, algunas personas tienen diferentes gustos.
+3

Dos buenas y malas razones? heh;) –

5

jQuery está construido en javascript y encapsula un estilo particular de programación y un conjunto de características admitidas. No todos quieren usar este estilo de programación o prefieren el conjunto de funciones en jQuery sobre las de otros marcos. jQuery es sin duda una mejora sobre la codificación de las mismas características usted mismo en JavaScript simple, pero no necesariamente un sustituto de todos los javascript ya que el conjunto de características es finito. Todavía necesitará escribir algunos javascript simples cuando use jQuery (o cualquier otro marco).

5

Puedo decirlo en una palabra: sobrecarga. Agrega otro 19K a tu página.

No me malinterprete, esta es una biblioteca enferma, la uso todo el tiempo.

+1

¿'enfermo' significa bueno? :) –

+0

¡Afortunadamente puede poner todo ese esfuerzo extra en Google! Yeehey! ;) – Frankie

+4

Um, no significa 'bueno' - significa 'impresionante'. –

-2

jQuery está desarrollado y se sigue desarrollando para el desarrollador de nivel básico. En realidad, está diseñado para no desarrolladores, por lo que hace que algunas cosas sean muy sencillas, PERO con un rendimiento comercial.

Lo hace muchas cosas bien y que hace muchas cosas mal, por diversas razones, como:

  • La estructura mencionada "a prueba de tontos"
  • sabor de equipo de jQuery
  • Amplia (pero un poco overkill) capacidades de navegador cruzado

Así que personalmente prefiero otra biblioteca escrita para JS Ninjas para un mejor rendimiento. De hecho, llegué a crear mi propia biblioteca, pero ese es otro problema.

+1

Hace muchas cosas bien y hace muchas cosas mal - gran declaración, pero no le da ninguna carne ..... explique – redsquare

1

Creo que la elección de un DOM JS & & biblioteca de AJAX que te gusta es importante, y casi siempre será apropiado utilizar dicha biblioteca, pero no dejes que eso te detenga para el aprendizaje de las características importantes de JavaScript, modismos & técnicas, como así como algunos navegadores y DOM API.

Tener miedo de dejar los límites de su biblioteca es muy limitante.

11

Una razón para realmente learn javascript.

Es un lenguaje verdaderamente hermoso que a menudo se pasa por alto, porque cuando la gente dice "Yo sé javascript", lo que realmente quieren decir es "Yo sé cómo copiar & pasta $('#content').hide(200) para hacer mi aplicación aspecto fresco".

Esto es un poco triste.

Dicho esto (sin juego de palabras), uso jquery todo el tiempo para tareas mundanas como xhr, manipulación DOM y tal. Desafortunadamente, no hay absolutamente ninguna razón para reinventar la rueda (más de una vez, de todos modos), especialmente teniendo en cuenta el hecho de que, a veces, tiene que inventar una rueda separada para cada navegador principal.

+0

Voto por no reinventar la rueda en absoluto. Buena publicación. –

+1

Bueno, en mi opinión, es bastante O.K. para inventar una rueda en particular una vez, porque eso te hace entender cómo funcionan otras ruedas de esos tipos. Quiero decir, nadie te obliga a utilizar tu solución "casera" en producción. Pero ciertamente ayuda a comprender la lógica subyacente de un framework/language/etc (no se trata solo de jquery y javascript aquí). – shylent

0

He usado Jquery varias veces, y es tan fácil comparado con el uso de dom. También parece que tiene más accesibilidad que DOM antiguo.

En palabras de Martha Stewart, "es algo bueno".

-1

Javascript es un gran lenguaje para principiantes si desea avanzar a .NET o java. Es menos complicado que otros lenguajes de programación, pero aún tiene esos principios básicos e invaluables. jquery quita esa similitud. JavaScript no necesariamente se debe usar para el diseño web, por ejemplo, unity 3d, un motor de juegos, usa Unityscript, que es casi idéntico a javascript. Aprendí a usarlo creando sitios web que usan javascript.

Sé que no es mucho, pero creo que una buena razón para ir a la ruta de JavaScript es aprender a programar. No es necesario saber javascript para construir un sitio, pero es bueno saber el código que lo incluye en un nivel básico.

+1

No estoy seguro de por qué este voto fue rechazado, da tanta información como cualquiera de las otras respuestas. +1 –

Cuestiones relacionadas