JavaScript ve jQuery’de Fonksiyon Varlık Kontrolü

Bazı durumlarda eklenti kullanmamız gerekir.. Ancak eklentiye her sayfada ihtiyaç olmadığı için sadece ihtiyaç olan sayfada eklenti dosyalarını yükletiriz.. Ancak genel js dosyası tek olduğu için, diğer sayfalarda bu eklenti olmadığından eklenti tanımından sonraki kodlar çalışmaz hale gelir.. Bu gibi durumlarda o kod satırını eğer eklenti var ise çalıştırmak en sağlıklı çözüm olacaktır.. Peki bunu nasıl yapacağız? Öncelikle bu jQuery eklentisi olacağından jQuery’nin bize sunmuş olduğu $.isFunction() fonksiyonunu kullanacağız.. Ve şu şekilde kontrol işlemini yapacağız;

if ( $.isFunction($.fn.eklentiAdi) ){
    /* eklentiAdi adlı eklentiyi uygulamak için gerekli kodlar */
}

Ya da şöylede kontrol edebiliriz;

if ( $().eklentiAdi ){
    /* eklentiAdi adlı eklentiyi uygulamak için gerekli kodlar */
}

Bu şekilde eğer böyle bir eklenti var ise o kod bloğu çalışacaktır ve altındaki kodları etkilemeyecektir.. Bunun bir benzeride jquery fonksiyonlarıdır.. Onun içinde kontrol şöyledir;

$.test = function(){}
if ( $.isFunction($.test) ){
    alert('test fonksiyonu var!');
}

javascript ile fonksiyon kontrolü için ise;

function test(){}
if ( typeof test == 'function' ){
    alert('fonksiyon mevcut!');
}

Ya da;

function erbilen(){}
if ( window.erbilen ){
    alert('erbilen fonksiyonu mevcut!');
}

Kolay gelsin ????

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir