Ich frage mich nur, was das beste Werkzeug ist, um wirklich JS-Skripte zu prüfen und nach Möglichkeiten zu suchen, die Gesamtleistung in Bezug auf Größe und Geschwindigkeit auf das "äußerste Maximum" zu verbessern?Javascript Leistungsoptimierung?
Antwort
Ich benutze gerne Firebug Profiler für die Verbesserung der Gesamtgeschwindigkeit. Es zeigt Ihnen, wie oft jede Funktion aufgerufen wurde, wie lange die Ausführung dauerte (Durchschnitt und Gesamt) und wie viel Prozent der gesamten JS-Ausführungszeit der Funktion dauerte. Ich bin kein großer Fan von Mikro-Optimierung, also benutze ich keine Werkzeuge, um das "äußerste Maximum" aus meinem Code herauszuholen, aber der Profiler hilft, die größeren Probleme auszusortieren.
Wie Größe, verwende ich die YUI compressor, um die Größe meiner JavaScript-Dateien zu minimieren. (Es gibt andere JavaScript Minification-Tools da draußen, ich bin nur am meisten an YUI's gewöhnt.)
Und wenn Sie Safari 4 haben, können Sie den JavaScript Profiler in seiner Web Inspector verwenden.
Für die Komprimierung Ihres Codes, mag ich die JavaScript Packer von Dean Edwards.
Steve
Ich folge normalerweise den folgenden Schritten.
- Mit JSLint - http://www.jslint.com/ das Skript optimieren.
- Verwenden Sie YUI Compressor.
- Profilieren Sie das Skript. Siehe Firebug & YSlow.
- 1. Redis Leistungsoptimierung
- 2. Java.io: Leistungsoptimierung
- 3. Symfony2 Leistungsoptimierung
- 4. Leistungsoptimierung bei Aktualisierungsabfrage
- 5. SQL Query Leistungsoptimierung
- 6. MySQL my.cnf Leistungsoptimierung Empfehlungen
- 7. HTML5/CSS GPU Leistungsoptimierung
- 8. SHA256 Leistungsoptimierung in C
- 9. Symfony 2 OneToMany Leistungsoptimierung
- 10. Maximo Anywhere - Leistungsoptimierung
- 11. Sitecore-Leistungsoptimierung - Sitecore-Konfigurationen, IIS-Konfigurationen
- 12. AppEngine Leistungsoptimierung mit Leerlaufinstanzen und ausstehenden Latenzeinstellungen
- 13. MySQL Leistungsoptimierung: Order by Datetime Feld
- 14. Überprüfen der SQL Server-Leistungsoptimierung für gespeicherte Prozeduren
- 15. Wie funktioniert die gezackte Array-Leistungsoptimierung von C# 3.0 im Vergleich zu rechteckigen Arrays?
- 16. Warum darf der Spread-Operator in React Native Component Property Assignment keine Leistungsoptimierung zulassen?
- 17. JavaScript Parser in JavaScript
- 18. Javascript
- 19. JavaScript
- 20. hinzufügen JavaScript-Objekt JavaScript-Objekt
- 21. Javascript :; vs javascript: void (0);
- 22. Funktionale JavaScript und Web-Browser Javascript-Versionen
- 23. Javascript/jQuery reine Javascript-Äquivalent von Code
- 24. JavaScript - Escape-Anführungszeichen im JavaScript-Objekteigenschaftswert
- 25. Kotlin-Compiler auf JavaScript in JavaScript?
- 26. Große Animations-Engines für Javascript? - Javascript/Animationen
- 27. Über Javascript-Code von Eloquent Javascript
- 28. JavaScript in einer anderen JavaScript-Datei verwenden
- 29. Inline Javascript und externe Javascript blockieren einander
- 30. Auslassen von type = "text/javascript" language = "javascript"
PACKER tatsächlich Dinge machen * größere * vs GZIP transportiert und wird die Ladezeit verlangsamen mit dem anfänglichen Parse/eval Schleife. Reduzieren Sie es einfach und verwenden Sie den GZIP-Transport. –
Aber der Packer * ist * ein 'Minifier'. Für mich hat der Packer die Dinge immer ziemlich gut verkleinert (z. B. das Reduzieren einer Datei von 28 KB auf 16 KB), und das Base62-Encoding (das die erste Parse/Eval-Schleife hinzufügt) ist optional. –