Respostas:
Existem 4 coisas que você pode fazer.
E algumas outras pessoas sugeriram:
Se você estiver usando bibliotecas comuns (como jQuery, Prototype ou Dojo), poderá transferir o arquivo para o Google e fazê- lo atendê-lo , isso oferece várias vantagens:
Nota: A versão solicitada pode ter um grande impacto nas características de armazenamento em cache: solicitar o jQuery 1.4.2 fornecerá um arquivo que pode ser armazenado em cache por um ano, mas o 1.4 poderá ser armazenado em cache apenas por uma hora.
Você pode colocar a biblioteca inteira em um arquivo js e compactar o arquivo. No entanto, isso realmente importa apenas para o primeiro carregamento de uma página. Depois disso, seu arquivo js será armazenado em cache no navegador, principalmente se você definir a validade do cache por tempo suficiente. Portanto, qualquer ocorrência consecutiva não carregará mais seu arquivo js.
Além das respostas acima, você pode usar o Google Closure Compiler para compactar e otimizar automaticamente seu JS enquanto se integra a outras bibliotecas de terceiros (jQuery, YUI, mootools etc.)
Se você tiver vários elementos de página e acesso a um domínio separado, poderá considerar hospedar todos os arquivos estáticos, incluindo o arquivo JS grande no segundo domínio.
Como Steve Souders observa em seu blog High Performance Web Sites :
... em algumas situações, vale a pena pegar vários recursos que estão sendo baixados em um único domínio e dividi-los em vários domínios. Eu chamo esse domínio de fragmentação. Isso permite que mais recursos sejam baixados em paralelo, reduzindo o tempo total de carregamento da página.
em outro lugar ele escreve ..
Os navegadores abrem um número limitado de conexões por domínio ... A divisão ou fragmentação das solicitações em dois domínios, em oposição a um domínio, resulta em uma página mais rápida, especialmente no IE 6 e 7