⊗jsPmFTNFE 235 of 505 menu

JavaScript'te İsimli Fonksiyon İfadeleri

Diyelim ki şöyle bir fonksiyon ifademiz var:

let test = function() { console.log('!'); }; test(); // '!' yazdıracak

Fonksiyonumuza func adını verelim:

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

Zaten bildiğiniz gibi, bu isimle fonksiyona erişilemez:

let test = function func() { console.log('!'); }; test(); // '!' yazdıracak func(); // hata verecek

Erişilemeyecekse fonksiyona neden isim verelim? Çünkü bu isim fonksiyonun dışından erişilemez olacak, ancak fonksiyonun içinden erişilebilir olacak.

Kontrol edelim:

let test = function func() { console.log(func); // fonksiyon kendi kaynak kodunu yazdıracak }; test(); // fonksiyonu çağırıyoruz

Fonksiyonumuzu kendi içinden çağıralım:

let test = function func() { console.log('!'); // '!' yazdırıyoruz func(); // kendimizi çağırıyoruz }; test();

Bu kodu çalıştırırsanız, konsola sonsuz sayıda çıktı yazdırılacaktır.

Aslında fonksiyonumuz kendi içinden sadece func olarak değil, aynı zamanda test olarak da çağrılabilir:

let test = function func() { console.log('!'); test(); // kendimizi çağırıyoruz }; test();

Peki fark nedir? Fark şu ki, test ismi sadece bir değişkendir. Script çalışırken fonksiyonumuz başka bir değişkene yazılabilir veya parametre olarak iletilebilir - bu durumda test değişkeni ile fonksiyon arasındaki bağlantı kopabilir.

func ismi ise, fonksiyonun kendi içinden kendisine erişebilmesi için özellikle fonksiyona sıkı bir şekilde bağlanmıştır.

Fonksiyon ismi olan bu tür Function Expression'lara isimli fonksiyon ifadeleri denir.

Türkçe
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenЎзбекOʻzbekTiếng Việt
Web sitesinin çalışması, analiz ve kişiselleştirme için çerezleri kullanıyoruz. Veri işleme, Gizlilik Politikası'na uygun olarak gerçekleşir.
tümünü kabul et özelleştir reddet