2010-10-13 23 views
5

Quali sono i vantaggi dell'utilizzo di un file javascript esterno? Non riesco proprio a capirlo, vedo i grandi siti Web che li utilizzano tutto più volte anziché gli accessi lato server. È solo per il caching?perché usare javascript esterno?

Se si tratta di un codice pulito e di una separazione delle preoccupazioni, è comunque possibile includerlo dal lato server nell'html. Ad esempio, utilizzo SMARTY e posso solo includere il file {include file='javascript.js} all'interno di <script></script> tages. Se è per le prestazioni, non riesco a vedere altro che una richiesta http aggiuntiva che rende più lento il file esterno. Sono sicuro che mi manchi qualcosa perché tutti i grandi siti web lo fanno ancora.

A causa della memorizzazione nella cache del file? i miei javascript sono dinamici e non dovrebbero essere memorizzati nella cache.

qualcuno potrebbe aiutarmi a prendere la decisione giusta per scegliere cosa fare con i miei file javascript.

ps: un utente di 1,5 K può creare un tag per javascript esterno?

risposta

5

Il più importante è che il file viene memorizzato nella cache dal browser. Meno byte devono essere inviati dal server, meglio è. Questa è una parte importante delle prestazioni web.

In secondo luogo, fornisce la modularità.

Non sono sicuro del perché il tuo JavaScript è dinamico, ma ti suggerisco di riscriverlo in un modo che rimuova tale necessità. Questo di per sé potrebbe essere un problema per voi lungo la strada.

+0

perché uso le tecniche AJAX e il codice deve essere diverso per ogni situazione.E non voglio mettere il codice JavaScript in linea per tutto a causa della modularità. – Neo

+0

L'uso di AJAX non è un motivo per JavaScript dinamico. Se il codice deve differire per situazioni diverse, è necessario modificare le funzioni per evitarlo. Lo script dovrebbe essere modulare. Pensa OOP. –

+0

questo è esattamente il motivo per cui il mio javascript è php dinamico lo crea con la sintassi corretta in base alla pagina. la ragione è complicata in quanto fa parte di un progetto di migrazione da un vecchio framework a uno nuovo. – Neo

0

aiutano inoltre gli sviluppatori a separare le diverse aree concettuali del loro codice. Può diventare davvero fastidioso guardando centinaia di migliaia di righe di js in un singolo file, oltre a un complicato html.

+0

ecco perché ci sono gli include lato server. – Neo

+0

@neo che non sembra essere quello che un SSI è per ... – hvgotcodes

+0

no non sto parlando di SSI ma letteralmente un inclusione sul lato server. Con php, nel mio caso con SMARTY – Neo

0

Oltre a quanto detto @Gabriel, ma aiuta anche utilizza la stessa funzione in diverse pagine, tecnico senza la necessità per loro (documenti html) ad essere più grande.