⊗jsPmFTFENN 234 of 505 menu

Συνάρτηση με όνομα, αλλά Function Expression στη JavaScript

Ας δημιουργήσουμε τώρα μια συνάρτηση που θα έχει όνομα, αλλά ταυτόχρονα θα είναι Function Expression, επειδή συμμετέχει σε μια έκφραση:

+function func() { console.log('!'); }

Είναι ενδιαφέρον ότι με το όνομα func δεν θα μπορούμε να απευθυνθούμε στη συνάρτησή μας, αυτό θα οδηγεί σε σφάλμα:

+function func() { console.log('!'); } func(); //!! θα δώσει σφάλμα

Για να έχουμε τη δυνατότητα να καλέσουμε τη συνάρτησή μας, πρέπει να την αντιστοιχίσουμε σε κάποια μεταβλητή:

let test = function func() { console.log('!'); }; test(); // θα εμφανίσει '!'

Για άλλη μια φορά: μια συνάρτηση που είναι functional expression δεν μπορεί να κληθεί με το όνομά της. Μια τέτοια συνάρτηση μπορεί να κληθεί μόνο χρησιμοποιώντας τη μεταβλητή στην οποία είχε αποθηκευτεί αυτή η συνάρτηση.

Ωστόσο, ένα functional expression μπορεί να έχει όνομα συνάρτησης, αυτό θα είναι συντακτικά σωστό. Γιατί χρειάζεται κάτι τέτοιο, θα το εξετάσουμε στα επόμενα μαθήματα.

Ας συνοψίσουμε: οι συναρτήσεις είναι Function Declaration ή Function Expression όχι επειδή έχουν όνομα ή δεν έχουν, αλλά επειδή είναι συμμετέχοντες σε εκφράσεις ή δεν είναι.

Όπως είδατε παραπάνω, μια συνάρτηση χωρίς όνομα μπορεί να γίνει αντιληπτή ως Function Declaration, ενώ μια συνάρτηση με όνομα μπορεί να είναι Function Expression.

Ελληνικά
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Χρησιμοποιούμε cookie για τη λειτουργία του ιστότοπου, την ανάλυση και την εξατομίκευση. Η επεξεργασία των δεδομένων γίνεται σύμφωνα με την Πολιτική Απορρήτου.
αποδοχή όλων ρύθμιση απόρριψη