⊗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(); // выведзе '!'

Яшчэ раз: функцыя, якая з'яўляецца функцыянальным выразам не можа быць выклікана па яе імені. Такая функцыя можа быць выклікана толькі з выкарыстаннем зменнай, у якую была запісана гэтая функцыя.

Але тым не менш, функцыянальны выраз можа мець імя функцыі, гэта будзе сінтаксічна карэктна. Навошта такое трэба, мы будзем разбірацца ў наступных уроках.

Падвядзем вынік: функцыі з'яўляюцца Function Declaration або Function Expression не таму, што маюць імя ці не маюць, а таму, што з'яўляюцца ўдзельнікамі выразаў ці не з'яўляюцца.

Як вы бачылі вышэй, функцыя без імені можа быць успрынята як Function Declaration, а функцыі з імем можа быць Function Expression.

Беларуская
AfrikaansAzərbaycanБългарскиবাংলাČeštinaDanskDeutschΕλληνικάEnglishEspañ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 для працы сайта, аналітыкі і персаналізацыі. Апрацоўка дадзеных адбываецца згодна Палітыкай канфідэнцыяльнасці.
прыняць усе наладзіць адхіліць