⊗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 файлдарын қолданамыз. Деректерді өңдеу Құпиялылық саясаты бойынша жүреді.
барлығын қабылдау баптау қабылдамау