Qual è il modo migliore per comprimere il codice JavaScript senza ottenere difetti di prestazioni?

StackOverflow https://stackoverflow.com/questions/114860

  •  02-07-2019
  •  | 
  •  

Domanda

Sto cercando un modo per comprimere il codice JavaScript per l'iPhone. C'è un modo per evitare di usare molto tempo della CPU sul dispositivo piccolo e piuttosto lento?

È stato utile?

Soluzione

Usa JSMin ed evita packer che consuma molto più CPU e rallenta a" svuotare ""

Altri suggerimenti

Utilizza il YUI Compressor

Adoro ShrinkSafe . Interpreta il tuo codice in Rhino, quindi restituisce il codice compresso. Poiché opera su un vero codice interpretato (anziché su valutazioni di stringhe complesse) non tratterrà mai il codice o non riuscirà a trovare le differenze tra variabili pubbliche e private.

È uno strumento di eccellente qualità.

Abbiamo usato js_compactor e JavaScriptLint per " compilare " e comprimere il nostro JavaScript nel nostro processo di compilazione automatizzato. Un ulteriore passo di compilazione richiederebbe la compressione di JavaScript e combinerebbe i file correlati in un unico pacchetto. L'aumento delle prestazioni è stato significativo, ma tieni presente che stai negoziando in remoto la possibilità di eseguire il debug.

Ridurre il numero di file trasmessi al client ti darà un grande aumento delle prestazioni quando ci sono più di alcuni file. In genere, i browser aprono solo 2 connessioni a un singolo server alla volta, quindi anche se si stanno trasmettendo file compressi e minimizzati, il browser spende una notevole quantità di overhead controllando la sua cache. yslow ci ha aiutato identifica perché le pagine impiegavano molto tempo a caricarsi e ci aiutano a concentrare i nostri sforzi di ottimizzazione. Abbiamo strumentato il nostro ambiente per utilizzare i file non elaborati o le versioni minimizzate e compresse .

Credo che Safari su iPhone supporti l'output di gzip in modo da poter usare qualcosa come mod_deflate. Ho ottenuto i migliori risultati usando questo metodo. Un bel po 'delle cose di compressione JavaScript là fuori è spazzatura assoluta e richiede più tempo per decomprimere che per scaricare il file più grande. JSMin sembra piuttosto buono, tuttavia.

Puoi provare diversi strumenti su JavaScript CompressorRater . Tutti gli strumenti, tranne il packer, non hanno alcun impatto sulla velocità con cui javascript viene eseguito per quanto ne so: rimuovono solo gli spazi bianchi, rinominano le variabili e così via.

Personalmente ritengo che YUI Compressor sia il migliore.

È sempre utile convalidare il codice in JSLint per essere sicuri che il compressore lo comprenda correttamente.

Assicurarsi che il proprio server web serva correttamente roba gzip / sgonfia quando il client lo supporta è di solito più efficace che minimizzare il codice del programma stesso. Ovviamente, usare entrambi tende a dare dimensioni ancora più ridotte.

Ho appena passato questo piccolo ballo negli ultimi giorni. Abbiamo provato a utilizzare Packer , ma abbiamo scoperto che l'esecuzione del JavaScript compresso impiegava più di 2 secondi (non per menzionare il blocco di altri download). Sulla base di questo articolo siamo passati a YUI Compressor . Non solo le dimensioni dei nostri file compressi con gzip sono inferiori, ma i tempi di esecuzione sono inferiori a 300 ms.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top