Σε αυτό το παράδειγμα, θα μάθετε να γράφετε ένα πρόγραμμα JavaScript που θα εκτελεί υπερφόρτωση λειτουργίας.
Για να κατανοήσετε αυτό το παράδειγμα, θα πρέπει να γνωρίζετε τις ακόλουθες ενότητες προγραμματισμού JavaScript:
- JavaScript αν… αλλιώς Δήλωση
- Δήλωση εναλλαγής JavaScript
- JavaScript Function and Function Expressions
Στον προγραμματισμό, η υπερφόρτωση λειτουργιών αναφέρεται στην έννοια όπου πολλαπλές συναρτήσεις με τα ίδια ονόματα μπορούν να έχουν διαφορετικές υλοποιήσεις. Ωστόσο, σε JavaScript, εάν υπάρχουν πολλές συναρτήσεις με το ίδιο όνομα, εκτελείται η συνάρτηση που ορίζεται στο τέλος.
Η λειτουργία υπερφόρτωσης λειτουργίας μπορεί να εφαρμοστεί με άλλους τρόπους.
Παράδειγμα 1: Χρήση δήλωσης if / else-if
// program to perform function overloading function sum() ( // if no argument if (arguments.length == 0) ( console.log('You have not passed any argument'); ) // if only one argument else if (arguments.length == 1) ( console.log('Pass at least two arguments'); ) // multiple arguments else ( let result = 0; let length = arguments.length; for (i = 0; i < length; i++) ( result = result + arguments(i); ) console.log(result); ) ) sum(); sum(5); sum(5, 9); sum(1, 2, 3, 4, 5, 6, 7, 8, 9);
Παραγωγή
Δεν έχετε περάσει κανένα επιχείρημα Περάστε τουλάχιστον δύο επιχειρήματα 14 45
Στο παραπάνω πρόγραμμα, η δυνατότητα υπερφόρτωσης επιτυγχάνεται χρησιμοποιώντας τη if/else… if
δήλωση.
- Στο JavaScript, το
arguments
αντικείμενο διατίθεται αυτόματα σε μια συνάρτηση που αντιπροσωπεύει τα ορίσματα που έχουν περάσει σε μια συνάρτηση. - Οι πολλαπλές συνθήκες αντιμετωπίζονται για την εκτέλεση ενεργειών με βάση τη συγκεκριμένη κατάσταση.
Παράδειγμα 2: Χρήση του διακόπτη Statement
// program to perform function overloading function sum() ( switch (arguments.length) ( case 0: console.log('You have not passed any argument'); break; case 1: console.log('Pass at least two arguments'); break; default: let result = 0; let length = arguments.length; for (i = 0; i < length; i++) ( result = result + arguments(i); ) console.log(result); break; ) ) sum(); sum(5); sum(5, 9); sum(1, 2, 3, 4, 5, 6, 7, 8, 9);
Παραγωγή
Δεν έχετε περάσει κανένα επιχείρημα Περάστε τουλάχιστον δύο επιχειρήματα 14 45
Στο παραπάνω πρόγραμμα, η switch
δήλωση χρησιμοποιείται για την ολοκλήρωση της λειτουργίας υπερφόρτωσης της λειτουργίας. Διαφορετικές συνθήκες έχουν ως αποτέλεσμα διαφορετικές ενέργειες που πρέπει να εκτελεστούν.