2016-10-14 27 views
5

Javascript'e yeni (örn. Öğrenim Javascript CORRECTLY). Ben Bölümde Web Geliştiriciler 3rd Edition için Profesyonel JavaScript "Statik Özel Değişkenler" bölümüne okuyorum 7. Javascript'te Statik Özelleştirilebilen Değişkenler

Bu kod ile sunuldu, ama ideal değil hissetmek

:

(function(){ 

    //private variables and functions 
    var privateVariable = 10; 

    function privateFunction(){ 
     return false; 
    } 

    //constructor 
    MyObject = function(){ 
    }; 

    //public and privileged methods 
    MyObject.prototype.publicMethod = function(){ 
     privateVariable++; 
     return privateFunction(); 
    }; 
})(); 

Bu durumda, "var" kelimesini atlayarak Global değişken olarak MyObject oluşturmaya güveniyorlar. Ancak, sıkı modda, var anahtar kelimesini atlayamazsınız ve bu kod bir hataya neden olur.

Yeniden yazım doğru olur mu?

Kitabın neden bu soruna bir çözüm getirmeyeceği ve tembel bir yöntemle yaklaştığı konusunda kafam karıştı. Tüm kodlarım için "katı mod" kullanmanın güçlü bir inancım var.

+4

Bu soru muhtemelen http://codereview.stackexchange.com de üzerinde aittir - ama dikkate alacağını senin Kitabın örneğinden nesnel olarak daha doğru bir şekilde yeniden yazınız. – Mic

+5

Versiyonuz iyi. Bu kitap oldukça eskidir; Web teknolojisi dünyasında 4 yıl büyük bir zaman dilimi. – Pointy

+0

Üzgünüz! İlk gönderiimde stackoverflow vardı. Birisi, bu harika olurdu daha uygun bir yere taşımak olabilir! –

cevap