⊗jsPmFTNFE 235 of 505 menu

Ифодаҳои функсионалии номдор дар JavaScript

Бигзор мо чунин ифодаи функсионалӣ дошта бошем:

let test = function() { console.log('!'); }; test(); // '!'-ро чоп мекунад

Биёед ба функсияи худ номи func диҳем:

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

Чунон ки шумо аллакай медонед, ба ин ном ба функсия дастрасӣ пайдо кардан мумкин нест:

let test = function func() { console.log('!'); }; test(); // '!'-ро чоп мекунад func(); // хато медиҳад

Чаро ба функсия ном диҳем, агар он дастрас набошад? Масъала ин аст, ки ин ном аз беруни функсия дастрас нахоҳад буд, аммо дар дохили ҳамин функсия дастрас аст.

Биёед санҷем:

let test = function func() { console.log(func); // функсия коди манбаии худро чоп мекунад }; test(); // функсияро даъват мекунем

Биёед функсияи худро дар дохили он даъват кунем:

let test = function func() { console.log('!'); // '!'-ро чоп мекунем func(); // худро даъват мекунем }; test();

Агар ин кодро оғоз кунем, пас ба консол шумораи беохири чопҳо бароварда мешавад.

Дар асл, функсияи мо на танҳо ба сурати func, балки ба сурати test низ дар дохили худ даъват карда метавонад:

let test = function func() { console.log('!'); test(); // худро даъват мекунем }; test();

Фарқ дар чист? Фарқ дар он аст, ки номи test - ин танҳо як тағирёбанда аст. Дар раванди кори скрипт, функсияи мо метавонад ба тағирёбандаи дигар навишта шавад ё параметр гузарад - дар ин ҳолат, пайванд байни тағирёбандаи test ва функсия метавонад аз даст барад.

Номи func ба функсия ба таври сахт васл шудааст, махсусан барои он ки ба функсияи мо дар дохили худ дастрасӣ пайдо кардан мумкин бошад.

Чунин ифодаҳои 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 истифода мебарем. Коркарди маълумот мувофиқи Сиёсати махфият сурат мегирад.
ҳамаро қабул кардан танзим кардан рад кардан