2012-07-25 10 views
5

He estado usando javascript desde hace algún tiempo y recientemente comencé a usar jquery, de lo cual admito que soy fan. <script type='text/javascript' src='../locationOfJquery/jquery.js'></script> permite el uso de la biblioteca en las etiquetas de secuencia de comandos en esa página. Lo que yo quiero saber es si simplemente incluyendo las etiquetas de script disminuye el tiempo de carga de la página cualquiera, incluso si no existe un código jQuery en la página, y también si hay otros inconvenientes principales a usar jQuery¿Hay algún inconveniente en incluir la biblioteca jquery en mi página?

+0

La fuente de jQuery minified es 32kb.No lo incluiría a menos que realmente lo estés usando. jQuery es increíble, ¡no hay inconvenientes! –

+1

Si fuera 1999, diría que sí. Pero en este día y edad, donde la mayoría de la gente tiene mejor que el acceso telefónico, no ... no afectará el rendimiento si simplemente incluye otros archivos JS. – kevin628

+1

Hay desventajas en jQuery ... al haber sido miembro de SO por un tiempo, he visto algunos usos bastante espantosos de jQuery simplemente porque hace las cosas muy fáciles. Es fácil hacer scripts innecesariamente ineficientes, especialmente si aprendes jQuery antes de javascript, que muchos novatos están haciendo. –

Respuesta

5
  • Ponga la etiquetas de script en la parte inferior de la página. Esto no ralentizará el procesamiento del DOM antes de que se active el evento onload.
  • Utilice la versión minified de jQuery, que es tan pequeña como una pequeña imagen/icono.
  • Si los visitantes visitan más de una página en su sitio, también se almacenará en caché después de su primera visita. También puede que ya se haya almacenado previamente (o servido desde un servidor más local) si utiliza una red de entrega de contenido (por ejemplo, Google). Las buenas primeras impresiones son fundamentales.

Para responder a más preguntas más pequeños que tenía:

  • Si no hay ningún código jQuery en la página, jQuery aún debe ser analizada. Puedes ver cuánto tiempo le lleva a tu computadora analizar jQuery usando una herramienta de creación de perfiles como Chrome.
  • Existen marcos que optimizan su javascript por página, pero estos tienen que intercambiar la capacidad de almacenar en caché un script frente a las ganancias en un análisis más rápido. Es casi seguro que no deberías preocuparte por ellos. jQuery es muy ligero en comparación con otros marcos.

Números:

Por ejemplo en Chrome cuando se carga la página web Stackoverflow, solicitando la biblioteca jQuery desde el CDN de Google, los resultados fueron:

  • 0.027ms tiempo agregado gastado descargar jQuery (quizás en caché)
  • 35.992ms de tiempo agregado dedicado a evaluar jQuery y realizar cualquier DOM/predeterminado Operaciones CSS

Esto es todo relativo, por supuesto. Apuesto que cuando cargó esta página no notó ningún retraso porque la página completa tardó unos 630ms en cargarse.

+0

Ok, sí, no debería haber preocupaciones en su implementación – John

0

No debe incluirlo si no lo está utilizando.

32k es un pequeño precio a pagar, pero es mejor no tener ninguna solicitud y 0k extra para descargar.

Además, y lo que es más importante, puede tener conflictos con otros marcos si está utilizando alguno.

+0

Actualmente no estoy, en este punto estoy principalmente preocupado solo por optimizar el tiempo de carga de una de mis páginas web más grandes, pero la funcionalidad de jQuery es definitivamente una conveniencia. – John

+0

No tendrá ningún impacto sustancial en el tiempo de carga ya que el navegador lo almacenará en caché, y el tiempo para ejecutarlo es minúsculo. Acepto que es mejor no incluirlo en las páginas que no se utiliza, pero no lo suficiente como para preocuparse a menos que sea realmente fácil (por ejemplo, su marco ya tiene un concepto de incluye condicional). No vale la pena perder el sueño. Si tiene una página de carga lenta, no es culpa de jQuery. –

+1

Si está considerando usar jQuery, entonces no me preocuparía incluirlo ahora. La optimización que realiza excluyéndola es pequeña. – Andrew

2

El cliente tendrá que descargar el script jQuery (que es bastante pequeño). Para optimizar aún más, puede usar las versiones alojadas de "Content Delivery Network" de Google o Microsoft. También recuerde usar la versión minimizada que se descarga más rápido.

This article indica las razones de por qué.

+2

Usar CDN no cambiará mucho las cosas. Eso es mejor para el mundo y su servidor que para un usuario individual. Puede salvarlos de una descarga, pero después de la primera vez que alguien acceda a su página, no tendrán que volver a descargar jQuery ya sea que esté vinculado a un CDN o a su servidor. No digo que no sea algo bueno, pero no cambiará el perfil general de un sitio que utiliza jQuery. –

+0

Sí, estoy de acuerdo en que es una optimización despreciable, pero aún así, puede ahorrar esa única descarga para la mayoría de los usuarios (si tiene millones de usuarios nuevos que significa 30 Kb frente a millones de usuarios de ancho de banda de usuarios), y disminuir la latencia para los otros usuarios que necesitan descargarlo. En general, es una situación de ganar-ganar. Creo que vale la pena subir al carro. –

Cuestiones relacionadas