⊗jsPmFTLE 237 of 505 menu

Išraiška kairėje funkcijos JavaScript kalboje

Panagrinėkime tokį kodą:

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

Kaip jau žinote, ši funkcija yra funkcinė išraiška, nepaisant to, kad ji turi pavadinimą (mes jau išsiaiškinome, kad pavadinimo buvimas apskritai ne kriterijus). Pašalinkime šį pliusą - ir gausime Function Declaration:

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

Pastatykime + eilutėje prieš funkciją - ji vėl taps Function Expression:

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

O dabar po pliuso pastatykime skaičių 1 ir kabliataškį - mūsų funkcija taps Function Declaration:

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

Kodėl taip: nes pirmoje eilutėje parašyta viena baigta komanda, uždarota kableliu su kabliataškiu. Todėl ši komanda niekaip neveikia mūsų funkcijos.

Tiesą sakant, kabliataškį galima pašalinti, juk JavaScript kalboje jis nėra privalomas - funkcija vis tiek liks Function Declaration:

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

O jei po 1 prikibsime dar vieną pliusą, tai funkcija taps Function Expression:

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

Kodėl taip: nes pirmoje eilutėje nebaigta išraiška - yra pliusas ir po jo nieko. Todėl JavaScript interpretatorius mano, kad šis pliusas priklauso eilutei žemiau, tai yra mūsų funkcijai.

Jei pirmoje eilutėje yra baigta išraiška, tai JavaScript automatiškai pastato jai kabliataškį ir ši išraiška niekaip neveikia mūsų funkcijos.

Nustatykite, ar pateikta funkcija yra Function Declaration ar Function Expression:

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

Nustatykite, ar pateikta funkcija yra Function Declaration ar Function Expression:

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

Nustatykite, ar pateikta funkcija yra Function Declaration ar Function Expression:

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

Nustatykite, ar pateikta funkcija yra Function Declaration ar Function Expression:

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

Nustatykite, ar pateikta funkcija yra Function Declaration ar Function Expression:

-1- function func() { console.log('!'); }
Lietuvių
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mes naudojame slapukus svetainės veikimui, analizei ir personalizavimui. Duomenų apdorojimas vyksta pagal Privatumo politiką.
priimti visus nustatyti atšaukti