⊗jsPmFNFRF 252 of 505 menu

ფუნქცია, რომელიც აბრუნებს ფუნქციას JavaScript-ში

დავუშვათ, გვაქვს ასეთი ფუნქცია, რომელიც აბრუნებს სტრიქონს:

function func() { return '!'; } let result = func(); console.log(result); // გამოიტანს '!'

ახლა კი, ანალოგიით, სტრიქონის ნაცვლად, დავაბრუნოთ ანონიმური ფუნქცია:

function func() { return function() { return '!'; }; } let result = func(); // result ცვლადში იქნება ფუნქცია console.log(result); // გამოიტანს 'function() {return '!';}'

როგორც ხედავთ, result ცვლადი ახლა წარმოადგენს ფუნქციას. მოდით გამოვიტანოთ კონსოლში მისი მუშაობის შედეგი. ამისთვის დავწეროთ მრგვალი ფრჩხილები:

function func() { return function() { return '!'; }; } let result = func(); console.log( result() ); // გამოიტანს '!'

რადგან func()-ის გამოძახება აბრუნებს ფუნქციას, ჩვენ შეგვიძლია დაუყოვნებლივ გამოვიძახოთ ეს დაბრუნებული ფუნქცია, ასე: func()() - პირველი მრგვალი ფრჩხილები იღებენ ფუნქციის func შედეგს (რომელიც თავად არის ფუნქცია), ხოლო მეორე მრგვალი ფრჩხილები ექვემდებარება func-ის შედეგს.

მოდით ვცადოთ:

function func() { return function() { return '!'; }; } console.log( func()() ); // გამოიტანს '!'

შექმენით ფუნქცია func1, რომელიც გამოძახებული ასე: func1()(), დააბრუნებს რიცხვს 1. შექმენით მსგავსი ფუნქცია func2, რომელიც აბრუნებს რიცხვს 2. იპოვეთ ამ ფუნქციების შედეგების ჯამი.

ქართული
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
ვებსაიტის მუშაობის, ანალიტიკისა და პერსონალიზაციისთვის ვიყენებთ ქუქი-ფაილებს. მონაცემთა დამუშავება ხდება Კონფიდენციალურობის პოლიტიკის შესაბამისად.
ყველას მიღება პარამეტრები უარყოფა