Απόδοση JavaScript
- Προηγούμενη σελίδα JS σφάλματα
- Επόμενη σελίδα JS λέξεις-κλειδιά
Πώς να επιταχύνετε τον κώδικα JavaScript σας.
Μείωση των δραστηριοτήτων στον κύκλο
Η προγραμματιστική συχνά χρησιμοποιεί κύκλους.
Κάθε επαναληπτική διαδικασία, κάθε πρόταση στον κύκλο, συμπεριλαμβανομένων for
Πρόταση, θα εκτελεστεί.
Κάθε πρόταση ή ανάθεση που μπορεί να τοποθετηθεί έξω από τον κύκλο θα κάνει τον κύκλο να τρέχει ταχύτερα.
Κακό κώδικας:
var i; for (i = 0; i < arr.length; i++) {
Καλύτερος κώδικας:
var i; var l = arr.length; for (i = 0; i < l; i++) {
Κάθε επαναληπτική διαδικασία, το κακό κώδικα θα επισκεφτεί την ακολουθία. length
Πρόσβαση σε ιδιότητες.
Καλή κώδικας θα επισκεφτεί έξω από τον κύκλο. length
Πρόσθεστε, ώστε η επαναληπτική λειτουργία να είναι ταχύτερη.
Μείωση των προσβασμών στο DOM
Συγκριτικά με άλλο JavaScript, η πρόσβαση στο HTML DOM είναι πολύ αργή.
Αν περιμένετε να επισκεφτείτε έναν στοιχεία DOM αρκετές φορές, επισκεφθείτε μόνο μια φορά και χρησιμοποιήστε το ως τοπική μεταβλητή:
Παράδειγμα
var obj; obj = document.getElementById("demo"); obj.innerHTML = "Hello";
Μείωση του μεγέθους του DOM
Παρακαλώ προσπαθήστε να διατηρήσετε λιγότερους στοιχείους στο HTML DOM.
Αυτό θα αυξήσει πάντα τη φόρτωση της σελίδας και θα επιταχύνει τη δια渲染 (εμφάνιση της σελίδας), ειδικά σε μικρά εξοπλιστικά.
Κάθε φορά που προσπαθείτε να αναζητήσετε το DOM (π.χ. getElementsByTagName
Θα επωφεληθούν από μικρότερο DOM.
Αποφύγετε απευθείας μεταβλητές
Παρακαλώ μην δημιουργείτε νέες μεταβλητές που δεν σχεδιάζετε να αποθηκεύσετε τιμές.
Γενικά μπορείτε να αντικαταστήσετε τον κώδικα:
var fullName = firstName + " " + lastName; document.getElementById("demo").innerHTML = fullName;
Χρησιμοποιήστε αυτό το κώδικα:
document.getElementById("demo").innerHTML = firstName + " " + lastName
Αναβολή φόρτωσης JavaScript
Παρακαλώ τοποθετήστε το σενάριο στο κάτω μέρος της σελίδας, ώστε ο περιηγητής να φορτώσει πρώτα τη σελίδα.
Κατά τη διάρκεια του κατεβάσματος του σεναρίου, ο περιηγητής δεν ξεκινά οποιεσδήποτε άλλες λήψεις. Επιπλέον, όλες οι δραστηριότητες ανάλυσης και διαμόρφωσης μπορεί να εμποδίσουν.
Η προδιαγραφή HTTP ορίζει ότι ο περιηγητής δεν πρέπει να κατεβάζει παράλληλα περισσότερα από δύο στοιχεία.
Μια επιλογή είναι να χρησιμοποιήσετε την ιδιότητα defer="true"
Η ιδιότητα defer καθορίζει ότι το σενάριο θα εκτελεστεί μετά την ολοκλήρωση της ανάλυσης της σελίδας, αλλά εφαρμόζεται μόνο σε εξωτερικά σενάρια.
Αν είναι δυνατόν, μπορείτε να προσθέσετε σενάρια στη σελίδα μετά την ολοκλήρωση της φόρτωσης της σελίδας μέσω κώδικα:
Παράδειγμα
<script> window.onload = downScripts; function downScripts() { var element = document.createElement("script"); element.src = "myScript.js"; document.body.appendChild(element); } </script>
Αποφύγετε τη χρήση with
Παρακαλώ αποφύγετε τη χρήση with
κλειδί. Αυτό έχει αρνητικό αντίκτυπο στη ταχύτητα. Επίσης, θα μπερδέψει το JavaScript ορίζοντα.
στον σκληρό τρόπο.Δεν επιτρέπεται κλειδί with.
- Προηγούμενη σελίδα JS σφάλματα
- Επόμενη σελίδα JS λέξεις-κλειδιά