Πώς να ελέγξετε τον τύπο μιας συνάρτησης στο JavaScript
Στα παρακάτω προβλήματα θα χρειαστεί να προσδιορίσετε αν μια συνάρτηση ορίζεται ως Function Declaration ή Function Expression.
Σε απλές περιπτώσεις, αυτό δεν είναι δύσκολο να γίνει οπτικά. Αλλά πώς να ελέγξετε ότι το κάνατε σωστά; Χρησιμοποιήστε τη διαφορά μεταξύ Function Declaration και Function Expression: οι πρώτες μπορούν να κληθούν πριν από τον ορισμό τους, ενώ οι δεύτερες - όχι.
Ας υποθέσουμε ότι έχουμε μια συνάρτηση όπως αυτή:
let test = function() {
console.log('!');
}
Ας καλέσουμε αυτή τη συνάρτηση πριν από τον ορισμό της:
test(); // θα εμφανίσει σφάλμα στην κονσόλα, άρα είναι Function Expression
let test = function() {
console.log('!');
}
Ακόμα ένα παράδειγμα:
func(); // θα εμφανίσει '!', άρα είναι Function Declaration
function func() {
console.log('!');
}
Ας βάλουμε ένα συν στην αρχή της συνάρτησής μας:
func(); // θα εμφανίσει σφάλμα στην κονσόλα, άρα είναι Function Expression
+function func() {
console.log('!');
}
Δεδομένου ότι η παραπάνω συνάρτηση είναι Function Expression και δεν έχει αντιστοιχηθεί σε καμία μεταβλητή, τότε δεν μπορεί να κληθεί με κανέναν τρόπο, αφού με το όνομα func δεν θα είναι προσβάσιμη.
Προσδιορίστε εάν η παρουσιαζόμενη συνάρτηση είναι Function Declaration ή Function Expression:
let test = function func() {
console.log('!');
}
Προσδιορίστε εάν η παρουσιαζόμενη συνάρτηση είναι Function Declaration ή Function Expression:
console.log(
function func() {
console.log('!');
}
);
Προσδιορίστε εάν η παρουσιαζόμενη συνάρτηση είναι Function Declaration ή Function Expression:
+function func() {
console.log('!');
}
Προσδιορίστε εάν η παρουσιαζόμενη συνάρτηση είναι Function Declaration ή Function Expression:
function func() {
console.log('!');
}