SORU
22 Kasım 2011, Salı


Bu nedir (() fonksiyonu { } )() javascript oluşturmak?

Bunun ne anlama geldiğini biliyordum ama ben artık mücadele...

Bu temelde document.onload diyor?

(function () {

})();

CEVAP
22 Kasım 2011, Salı


Immediately-Invoked Function Expression veya daha kısa bir şey: IIFE. Oluşturulduktan hemen sonra çalıştırılır.

Herhangi bir olay için olay işleyicisi (document.onload) ile hiçbir ilgisi yok.
Parantez ilk çifti ((function(){/*...*/})) işlevi yapan bir ifade ve ikinci ((function(){/.../})()) hesaplanan ifade ettikleri için işlev çağrıları.

Bu desen genellikle tüm değişkenleri fonksiyon içinde kullanılan kapsamı dışında görünür değildir, çünkü genel ad kirletici önlemek için çalışırken kullanılır.
Bu, belki de, genelde bu kullanılıyor çünkü window.onload, olay işleyicisi ile bu inşaat karıştı:

(function(){
    // all your code here
    var foo = function() {};
    window.onload = foo;
    // ...
})();
// foo is unreachable here (it’s undefined)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • infiniTuts

    infiniTuts

    18 Ocak 2012
  • StalkerJS

    StalkerJS

    15 HAZİRAN 2010