Agrupar todos mis .js en un solo archivo: ¿buena idea?

Tengo varios scripts en mi sitio web. ¿Tendría sentido agruparlos a todos en un solo archivo? ¿O es preferible mantenerlos separados?

preguntado el 28 de julio de 12 a las 15:07

2 Respuestas

Para la producción, siempre los agruparía en un archivo y los comprimiría y/o minimizaría. El navegador solo puede (¿solía?) hacer 2 solicitudes al mismo tiempo al mismo dominio.

Si es una acción única, puede usar esto sitio web para minificar los archivos. De lo contrario, tendría que considerar la automatización del proceso.

Pero también conserve sus archivos originales sin comprimir por si desea realizar cambios en algún momento.

Respondido 28 Jul 12, 15:07

Depende del tipo de javascript que se incluya. Los recursos de CDN deben estar separados para aprovechar el almacenamiento en caché del navegador. - zzzzBov

@zzzzBov Pensé que OP estaba hablando de archivos locales, pero sí. Los archivos CDN ofc no deben agregarse al archivo; de lo contrario, ya no sería un CDN. - PeeHaa

2 conexiones por dominio parece un poco demasiado bajo. Los navegadores actuales pueden manejar más. - Bergi

El número real de solicitudes simultáneas suele ser 4. No estoy seguro acerca de los navegadores webkit, pero en Firefox, este valor se puede configurar en about:config bajo network.http.pipelining.maxrequests (y en IE era configurable a través de una edición del registro). Este valor no ha cambiado desde que lo supe por primera vez hace más de 10 años. Tenga en cuenta que esto no es lo mismo que persistent-connections, que tiene más que ver creo que con keepalive que cualquier otra cosa. - Andrés

Nadie (casi) cambia la configuración de su navegador. Y la especificación también establece 2 conexiones. Y si lo aprendiste hace 10 años, todavía era 2 (IE7 todavía era algo a tener en cuenta y ese era un máximo de 2 por defecto AFAIK). Aunque gracias por más información. - PeeHaa

Para la producción mejor:

  • cargar todos los marcos minimizados de google CDN
  • recopile todo el script para el sitio en un archivo minícelo/comprímalo.
  • si el archivo minimizado tiene un tamaño mayor de 256 kB y algunos scripts no se usan en todas las páginas, hasta que sean 2 o 3
  • si los archivos de script son más de 3, es malo (la mayoría de los navegadores lo cargan paso a paso y bloquean la página para el usuario)
  • publicar todos los scripts en la parte inferior del código html

Para la carga de marcos alternativos (google también puede estar inactivo)

<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript">window.jQuery || document.write('<script type="text/javascript" src="js/jquery.min.js"><\/script>')</script>

Respondido 28 Jul 12, 15:07

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.