Funcții anonime și de auto-execuție în javascript

Anonimatul în fiecare zi

Probabil că ați întâlnit deja funcții anonime. Acestea intră în apelul funcțional.

Funcția nu are un nume în handler-ul evenimentului, este anonimă. Funcțiile anonime sunt adesea create și lansate imediat, deoarece se află în interiorul coloanei vertebrale a funcției. O altă diferență importantă este că funcțiile numite sunt declarate, iar cele anonime sunt create folosind operatorul de funcții. Funcțiile anonime pot acționa ca valoare pentru o variabilă:

Astfel, o funcție poate fi accesată de o variabilă, însă funcția însăși rămâne anonimă. De asemenea, puteți specifica o funcție numită ca valoare variabilă. Cu toate funcțiile anonime, ele sunt chiar mai potrivite pentru astfel de scopuri.

Diferența față de funcțiile obișnuite

Diferența importantă dintre funcțiile anonime este că ele trebuie declarate înainte de a fi chemați. Vă puteți aminti primul articol din seria noastră. Se spune că funcțiile obișnuite pot fi declarate și numite oriunde. Browserul analizează codul înainte de al executa, preluând funcțiile numite de-a lungul căii. Simplul fapt că funcțiile ar trebui să fie scrise la începutul scenariului este doar o convenție și o bună practică de programare. O funcție anonimă este creată atunci când este rulată într-un script, nu în timpul parsării, deci nu poate fi scrisă după ce este apelată în cod.

Funcții anonime și de auto-execuție în javascript

Tendințe și abordări moderne în dezvoltarea web

Învățați algoritmul de creștere profesională rapidă de la zero în clădirea site-ului

Modalități de utilizare a funcțiilor anonime

Funcțiile anonime nu au nume, astfel încât acestea sunt mai scurte și mai ușor de scris dacă nu trebuie să le menționați în cod. Din acest motiv, ele sunt utilizate în funcțiile de apel invers. Există o altă caracteristică interesantă: într-o anumită înregistrare, astfel de funcții se pot numi.

Tehnica se numește funcție de auto-împlinire. Efectul este creat de paranteze goale la sfârșitul funcției, care indică browserului că această funcție trebuie executată cât mai repede posibil. O astfel de înregistrare poate părea inutilă, JS obișnuit va lansa, de asemenea, funcția atunci când vine vorba de ea în cod. Deci, de ce folosiți o astfel de înregistrare ciudată?

Motivul principal este domeniul de aplicare al funcției. Puteți reține din ultimul articol că o variabilă declarată în interiorul unei funcții poate fi apelată numai în interiorul acestei funcții. În restul codului, această variabilă nu este vizibilă. În mod similar, o variabilă în interiorul unei funcții de auto-execuție se închide în interiorul acestei funcții. O astfel de variabilă nu poate fi apelată accidental din codul extern sau rescrisă. Această tehnică înglobează cu ușurință variabilele și codul, ascunzându-le din spațiul de nume global, astfel încât acestea să nu contravină altui cod. Prin aceeași schemă, polifilele și plug-inurile sunt adesea scrise, sub forma unor funcții de auto-execuție.

concluzie

După ce ați înțeles esența funcțiilor anonime și de auto-îndeplinire, puteți transfera funcții în variabile și puteți reconstrui codul prin module. Funcțiile de acest tip pot fi, de asemenea, folosite pentru a crea și a readuce alte funcții. Aici vorbim de închidere, despre care vom vorbi în următorul articol.

Ediție: Comanda webformself.

Cele mai recente știri despre dezvoltarea IT și web pe canalul nostru de telegrame