JavaScript'te Fonksiyon Türü Nasıl Kontrol Edilir

Aşağıdaki görevlerde, sunulan fonksiyonun Fonksiyon Deklarasyonu (Function Declaration) mu yoksa Fonksiyon İfadesi (Function Expression) mı olduğunu belirlemeniz gerekecek.

Basit durumlarda bunu görsel olarak yapmak zor değildir. Ancak bunu doğru yaptığınızı nasıl kontrol edersiniz? Fonksiyon Deklarasyonu ve Fonksiyon İfadesi arasındaki farkı kullanın: ilkleri tanımlandıkları yerin üzerinde çağrılabilir, ikincileri ise çağrılamaz.

Şu şekilde bir fonksiyonumuz olduğunu varsayalım:

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

Bu fonksiyona tanımından önce erişelim:

javascripttest(); // konsola hata yazdırır, demek ki Fonksiyon İfadesi

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

İşte başka bir örnek:

javascriptfunc(); // '!' yazdırır, demek ki Fonksiyon Deklarasyonu

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

Fonksiyonumuzun önüne bir artı işareti koyalım:

javascriptfunc(); // konsola hata yazdırır, demek ki Fonksiyon İfadesi

+function func() {
  console.log('!');
}

Yukarıdaki fonksiyon bir Fonksiyon İfadesi olduğundan ve herhangi bir değişkene atanmadığından, func adıyla erişilemeyeceği için hiçbir şekilde çağrılamaz.

Задание 1

Sunulan fonksiyonun Fonksiyon Deklarasyonu mu yoksa Fonksiyon İfadesi mi olduğunu belirleyin:

javascriptlet test = function func() {
  console.log('!');
}
Задание 2

Sunulan fonksiyonun Fonksiyon Deklarasyonu mu yoksa Fonksiyon İfadesi mi olduğunu belirleyin:

javascriptconsole.log(
  function func() {
    console.log('!');
  }
);
Задание 3

Sunulan fonksiyonun Fonksiyon Deklarasyonu mu yoksa Fonksiyon İfadesi mi olduğunu belirleyin:

javascript+function func() {
  console.log('!');
}
Задание 4

Sunulan fonksiyonun Fonksiyon Deklarasyonu mu yoksa Fonksiyon İfadesi mi olduğunu belirleyin:

javascriptfunction func() {
  console.log('!');
}