Από το 2015, το EcmaScript6 (ES6) έχει φέρει πολλές προόδους στις πρακτικές κωδικοποίησης JavaScript. Πολλές σύγχρονες έννοιες εισήχθησαν στο JavaScript, βελτιώνοντας σημαντικά την εμπειρία κωδικοποίησης. Σε αυτό το άρθρο, θα μάθετε για τους επαναληπτές και τις γεννήτριες στο JavaScript.
Οι επαναλήπτες και οι γεννήτριες είναι δύο διαφορετικές έννοιες, αλλά χρησιμοποιούνται με παρόμοιο τρόπο. Έχουν συνηθίσει να επαναλαμβάνονται μέσα από πίνακες και αντικείμενα στο JavaScript.
Επαναλήπτες
Οι επαναλήπτες είναι σαν προηγμένοι βρόχοι που μπορούν να τεθούν σε παύση. Οι επανειλημμένοι αποτελούνται από το Επόμενο() συνάρτηση, η οποία επιστρέφει την τιμή και την κατάσταση τελειωμένου. ο αξία πεδίο είναι η τιμή του πίνακα σε ένα δεδομένο ευρετήριο. Έγινε είναι η boolean τιμή που επιστρέφει την κατάσταση ολοκλήρωσης για την επανάληψη μέσω του βρόχου.
Ακολουθεί ένα παράδειγμα που δείχνει τον τρόπο με τον οποίο επαναλαμβάνονται:
λειτουργία fruitIter (φρούτα) {
ας δείκτης = 0;
ΕΠΙΣΤΡΟΦΗ {
επόμενο: λειτουργία () {
δείκτης επιστροφής }
}
}
construitArray = ["Mango", "Banana", "Grapes"];
const fruit = fruitIter (fruitArray);
console.log (φρούτα.επόμενο (). αξία);
Παραγωγή:
Μάνγκο
Όταν περάσετε το φρούταArray συστοιχία στο fruitIter () μέθοδο, επιστρέφει έναν επαναληπτή που είναι αποθηκευμένος στο φρούτα μεταβλητός. ο δείκτης μεταβλητή στο fruitIter () η μέθοδος αρχικοποιείται στο 0. Αυτή η μέθοδος επιστρέφει το Επόμενο() λειτουργία που βοηθά στην βρόχο μέσα στον πίνακα. ο Επόμενο() συνάρτηση ελέγχει εάν ο δείκτης είναι μικρότερος από φρούταArray μήκος. Αν ναι, επιστρέφει δύο μεταβλητές: το όνομα του φρούτου σε αυτόν τον δείκτη και το Έγινε κατάσταση. Ενώ επιστρέφει αυτές τις τιμές, αυξάνει επίσης την τιμή του δείκτη.
Για να ελέγξετε πώς λειτουργεί αυτή η μέθοδος και να εκτυπώσετε το όνομα του φρούτου, πρέπει να καλέσετε το Επόμενο() λειτουργία στο φρούτα iterator και αποκτήστε πρόσβαση στην τιμή του.
Σχετίζεται με: Τι είναι μια λειτουργία στον προγραμματισμό;
Γεννήτριες
Οι γεννήτριες είναι παρόμοιες με τις Επαναλήψεις, αλλά επιστρέφουν πολλαπλές τιμές. Αυτές οι τιμές ονομάζονται τιμές απόδοσης. Οι λειτουργίες γεννήτριας γράφονται χρησιμοποιώντας το λειτουργία* σύνταξη. * δηλώνει ότι δεν είναι μια φυσιολογική συνάρτηση, αλλά γεννήτρια. Ακολουθεί ένα παράδειγμα γεννητριών:
λειτουργία* printFruits () {
απόδοση "Mango"?
απόδοση "Μπανάνα"?
απόδοση "Σταφύλια"?
}
const fruit = printFruits ();
console.log (fruit.next ());
Παραγωγή:
{value: 'Mango', done: false}
Σε αυτό το παράδειγμα, απόδοση παραγωγής είναι ο επαναληπτικός. Όταν καλείτε τη λειτουργία printFruits (), και εκτύπωση φρούτα.επόμενο (), σας δίνει ένα αντικείμενο όπου λαμβάνετε την τιμή. ο Έγινε Η κατάσταση υποδηλώνει εάν έχουν επαναληφθεί όλες οι τιμές.
Μάθετε δομές δεδομένων χρησιμοποιώντας κλάσεις ES6 σε JavaScript
Το JavaScript ES6 έφερε μεγάλη πρόοδο στις πρακτικές κωδικοποίησης. Το λιγότερο από τα οποία είναι η δημιουργία δομών δεδομένων χρησιμοποιώντας κλάσεις ES6. Σπρώξτε. αναδυθείτε και συγκεντρωθείτε στην κορυφή και γίνετε επαγγελματίας JavaScript!
Με την εισαγωγή του JavaScript ES6 ήρθαν προσαρμοσμένες δομές δεδομένων. Δείτε πώς μπορείτε να τα δημιουργήσετε και να τα εφαρμόσετε.
Διαβάστε Επόμενο
- Προγραμματισμός
- JavaScript
- Συμβουλές κωδικοποίησης
- Προγραμματισμός

Ο Unnati είναι ένας ενθουσιώδης προγραμματιστής πλήρους στοίβας. Της αρέσει να κατασκευάζει έργα χρησιμοποιώντας διάφορες γλώσσες προγραμματισμού. Στον ελεύθερο χρόνο της, της αρέσει να παίζει κιθάρα και είναι λάτρης της μαγειρικής.
Εγγραφείτε στο newsletter μας
Εγγραφείτε στο ενημερωτικό μας δελτίο για τεχνικές συμβουλές, κριτικές, δωρεάν ebooks και αποκλειστικές προσφορές!
Κάντε κλικ εδώ για εγγραφή