Fonksiyon oluşturmanın hangi yollarını biliyorsunuz?
sobes.tech yapay zeka
AI'dan gelen yanıt
JavaScript'te fonksiyonlar oluşturmanın birkaç yolu vardır, her biri kendi özellikleriyle:
-
Fonksiyon Bildirimleri (Function Declarations): Klasik fonksiyon oluşturma yöntemidir. Yukarı kaldırılırlar (hoisted) ve bu, onları bildirimlerinden önce çağırmaya olanak tanır.
// function kullanarak fonksiyon bildirimi function greet(name) { return "Merhaba, " + name + "!"; } -
Fonksiyon İfadeleri (Function Expressions): Fonksiyon, bir ifadenin parçası olarak oluşturulur ve bir değişkene atanır. Aynı ölçüde yukarı kaldırılmazlar (not hoisted).
// Fonksiyon ifadesi const greet = function(name) { return "Merhaba, " + name + "!"; }; -
Ok Fonksiyonları (Arrow Functions): Fonksiyon ifadeleri için kısaltılmış sözdizimi.
thisve kendi argümanları (arguments) olmaması gibi klasik fonksiyonlardan farkları vardır.// Ok fonksiyonu const greet = (name) => { return "Merhaba, " + name + "!"; }; // Kısaltılmış biçim, dolaysız dönüş const greetShort = (name) => "Merhaba, " + name + "!"; -
Yapıcı Fonksiyonlar (Constructor Functions): Nesneler oluşturmak için kullanılırlar.
newanahtar kelimesiyle çağrılırlar.// Yapıcı fonksiyon function Person(name, age) { this.name = name; this.age = age; } // Yapıcı kullanarak örnek oluşturma const person1 = new Person("Aleksei", 30); -
Sınıf Yöntemleri (Class Methods): Sınıflarda (protottip kalıtım üzerinde sözdizimi şekerlemesi) fonksiyonlar yöntemler olarak tanımlanır.
// Yöntemi olan sınıf bildirimi class Greeter { greet(name) { return "Merhaba, " + name + "!"; } } // Sınıf örneği oluşturma ve yöntemi çağırma const greeter = new Greeter(); const message = greeter.greet("Dünya"); -
Hemen Çağrılan Fonksiyon İfadeleri (IIFE): Oluşturulduktan hemen sonra çalışan fonksiyon ifadesi. Yerel bir alan oluşturmak için kullanılır.
// IIFE (function() { // IIFE içindeki kod console.log("Bu fonksiyon hemen çalışır!"); })();
Her yöntemin avantajları ve dezavantajları vardır ve seçim, belirli göreve ve bağlama bağlıdır.