Junior
Τι είναι μια λειτουργική έκφραση και ποιος είναι ο σκοπός της;
sobes.tech AI
Απάντηση από AI
Η λειτουργική έκφραση είναι ένας ορισμός λειτουργίας μέσα σε μια άλλη έκφραση. Δεν δηλώνεται ως ξεχωριστός τελεστής function όνομα(...) {}, αλλά ανατίθεται σε μια μεταβλητή, ιδιότητα αντικειμένου ή χρησιμοποιείται ως όρισμα άλλης λειτουργίας.
Για τι χρειάζεται;
- Δημιουργία ανώνυμων λειτουργιών: Επιτρέπει τον ορισμό μιας λειτουργίας χωρίς όνομα, χρήσιμο για callbacks ή λειτουργίες μιας χρήσης.
- Κλεισίματα (Closures): Οι λειτουργικές εκφράσεις χρησιμοποιούνται συχνά για τη δημιουργία κλεισιμάτων, επιτρέποντας στη λειτουργία να "θυμάται" μεταβλητές από το εξωτερικό περιβάλλον, ακόμα και μετά την ολοκλήρωση της εξωτερικής λειτουργίας.
- IIFE (Αμέσως καλούμενες εκφράσεις λειτουργίας): Παρέχουν απομόνωση κώδικα και αποτρέπουν τη μόλυνση του παγκόσμιου χώρου.
- Δυναμικός ορισμός λειτουργιών: Οι λειτουργίες μπορούν να δημιουργηθούν και να ανατεθούν ανάλογα με τις συνθήκες εκτέλεσης του προγράμματος.
Παράδειγμα ανώνυμης λειτουργικής έκφρασης:
// Ανάθεση ανώνυμης λειτουργίας σε μια μεταβλητή
const greet = function(name) {
console.log(`Γειά σου, ${name}!`);
};
greet("Κόσμος");
Παράδειγμα IIFE:
(function() {
// Ο κώδικας μέσα σε αυτήν τη λειτουργία εκτελείται άμεσα
// και οι μεταβλητές μέσα σε αυτήν δεν είναι προσβάσιμες από έξω
let privateVariable = "μυστικό";
console.log(privateVariable);
})();
// console.log(privateVariable); // Σφάλμα: privateVariable δεν ορίζεται