8.2 KiB
Διασκέδαση με Συναρτήσεις
Οδηγίες
Σε αυτή την εργασία, θα εξασκηθείτε στη δημιουργία διαφορετικών τύπων συναρτήσεων για να ενισχύσετε τις έννοιες που έχετε μάθει σχετικά με τις συναρτήσεις JavaScript, τις παραμέτρους, τις προεπιλεγμένες τιμές και τις δηλώσεις επιστροφής.
Δημιουργήστε ένα αρχείο JavaScript με όνομα functions-practice.js και υλοποιήστε τις παρακάτω συναρτήσεις:
Μέρος 1: Βασικές Συναρτήσεις
-
Δημιουργήστε μια συνάρτηση με όνομα
sayHelloπου δεν δέχεται καμία παράμετρο και απλώς εμφανίζει "Hello!" στην κονσόλα. -
Δημιουργήστε μια συνάρτηση με όνομα
introduceYourselfπου δέχεται μια παράμετροnameκαι εμφανίζει ένα μήνυμα όπως "Γεια, το όνομά μου είναι [name]" στην κονσόλα.
Μέρος 2: Συναρτήσεις με Προεπιλεγμένες Παραμέτρους
- Δημιουργήστε μια συνάρτηση με όνομα
greetPersonπου δέχεται δύο παραμέτρους:name(υποχρεωτική) καιgreeting(προαιρετική, με προεπιλεγμένη τιμή "Hello"). Η συνάρτηση πρέπει να εμφανίζει ένα μήνυμα όπως "[greeting], [name]!" στην κονσόλα.
Μέρος 3: Συναρτήσεις που Επιστρέφουν Τιμές
-
Δημιουργήστε μια συνάρτηση με όνομα
addNumbersπου δέχεται δύο παραμέτρους (num1καιnum2) και επιστρέφει το άθροισμά τους. -
Δημιουργήστε μια συνάρτηση με όνομα
createFullNameπου δέχεται παραμέτρουςfirstNameκαιlastNameκαι επιστρέφει το πλήρες όνομα ως μία ενιαία συμβολοσειρά.
Μέρος 4: Συνδυάστε τα Όλα
- Δημιουργήστε μια συνάρτηση με όνομα
calculateTipπου δέχεται δύο παραμέτρους:billAmount(υποχρεωτική) καιtipPercentage(προαιρετική, με προεπιλεγμένη τιμή 15). Η συνάρτηση πρέπει να υπολογίζει και να επιστρέφει το ποσό του φιλοδωρήματος.
Μέρος 5: Δοκιμάστε τις Συναρτήσεις σας
Προσθέστε κλήσεις συναρτήσεων για να δοκιμάσετε κάθε μία από τις συναρτήσεις σας και να εμφανίσετε τα αποτελέσματα χρησιμοποιώντας console.log().
Παραδείγματα κλήσεων δοκιμής:
// Test your functions here
sayHello();
introduceYourself("Sarah");
greetPerson("Alex");
greetPerson("Maria", "Hi");
const sum = addNumbers(5, 3);
console.log(`The sum is: ${sum}`);
const fullName = createFullName("John", "Doe");
console.log(`Full name: ${fullName}`);
const tip = calculateTip(50);
console.log(`Tip for $50 bill: $${tip}`);
Κριτήρια Αξιολόγησης
| Κριτήριο | Εξαιρετικό | Επαρκές | Χρειάζεται Βελτίωση |
|---|---|---|---|
| Δημιουργία Συναρτήσεων | Όλες οι 6 συναρτήσεις υλοποιούνται σωστά με σωστή σύνταξη και ονοματολογία | 4-5 συναρτήσεις υλοποιούνται σωστά με μικρά προβλήματα σύνταξης | 3 ή λιγότερες συναρτήσεις υλοποιούνται ή υπάρχουν σοβαρά προβλήματα σύνταξης |
| Παράμετροι & Προεπιλεγμένες Τιμές | Χρησιμοποιούνται σωστά οι υποχρεωτικές παράμετροι, οι προαιρετικές παράμετροι και οι προεπιλεγμένες τιμές όπως καθορίζεται | Οι παράμετροι χρησιμοποιούνται σωστά αλλά μπορεί να υπάρχουν προβλήματα με τις προεπιλεγμένες τιμές | Λανθασμένη ή ελλιπής υλοποίηση παραμέτρων |
| Τιμές Επιστροφής | Οι συναρτήσεις που πρέπει να επιστρέφουν τιμές το κάνουν σωστά, και οι συναρτήσεις που δεν πρέπει να επιστρέφουν τιμές εκτελούν μόνο ενέργειες | Οι περισσότερες τιμές επιστροφής είναι σωστές με μικρά προβλήματα | Σημαντικά προβλήματα με τις δηλώσεις επιστροφής |
| Ποιότητα Κώδικα | Καθαρός, καλά οργανωμένος κώδικας με ουσιαστικά ονόματα μεταβλητών και σωστή εσοχή | Ο κώδικας λειτουργεί αλλά θα μπορούσε να είναι πιο καθαρός ή καλύτερα οργανωμένος | Ο κώδικας είναι δύσκολο να διαβαστεί ή κακώς δομημένος |
| Δοκιμή | Όλες οι συναρτήσεις δοκιμάζονται με κατάλληλες κλήσεις συναρτήσεων και τα αποτελέσματα εμφανίζονται καθαρά | Οι περισσότερες συναρτήσεις δοκιμάζονται επαρκώς | Περιορισμένη ή λανθασμένη δοκιμή συναρτήσεων |
Προαιρετικές Προκλήσεις (Bonus)
Αν θέλετε να προκαλέσετε τον εαυτό σας περισσότερο:
- Δημιουργήστε μια έκδοση με βέλος (arrow function) για μία από τις συναρτήσεις σας
- Δημιουργήστε μια συνάρτηση που δέχεται μια άλλη συνάρτηση ως παράμετρο (όπως τα παραδείγματα
setTimeoutαπό το μάθημα) - Προσθέστε έλεγχο εισόδου για να διασφαλίσετε ότι οι συναρτήσεις σας χειρίζονται σωστά μη έγκυρες εισόδους
💡 Συμβουλή: Θυμηθείτε να ανοίξετε την κονσόλα προγραμματιστή του προγράμματος περιήγησης (F12) για να δείτε την έξοδο των δηλώσεων
console.log()σας!
Αποποίηση ευθύνης:
Αυτό το έγγραφο έχει μεταφραστεί χρησιμοποιώντας την υπηρεσία αυτόματης μετάφρασης Co-op Translator. Παρόλο που καταβάλλουμε προσπάθειες για ακρίβεια, παρακαλούμε να έχετε υπόψη ότι οι αυτόματες μεταφράσεις ενδέχεται να περιέχουν λάθη ή ανακρίβειες. Το πρωτότυπο έγγραφο στη μητρική του γλώσσα θα πρέπει να θεωρείται η αυθεντική πηγή. Για κρίσιμες πληροφορίες, συνιστάται επαγγελματική ανθρώπινη μετάφραση. Δεν φέρουμε ευθύνη για τυχόν παρεξηγήσεις ή εσφαλμένες ερμηνείες που προκύπτουν από τη χρήση αυτής της μετάφρασης.