SORU
24 NİSAN 2010, CUMARTESİ


! = sattığınız= "tanımsız" vs. != null

Ben sık sık tanımlanmamış parametreler için vb kontrol eden JavaScript kodu bakın. bu şekilde

if (typeof input !== "undefined") {
    // do stuff
}

Bu tür bir arama ve bir dize karşılaştırma hem de içerdiğinden, ayrıntı bahsetmiyorum bile gereksiz görünüyor. Çünkü 'tanımsız' adını ama olabilir. gerekli Benim soru: Nasıl daha iyi bu yaklaşım daha kodu:

if (null != input) {
    // do stuff
}

Bildiğim kadarıyla, beklenmedik bir şekilde kırmak için değil yani null yeniden tanımlamak, yapamazsın. Ve, bu tür zorlama= yüzünden! tam olarak ne istediğinizi sık sık olan operatör, bu iki tanımsız ve boş denetler... (isteğe bağlı fonksiyon parametreleri gibi). Henüz bu formu yaygın görünmüyor, ve hatta JSLint sana bağırmak neden kötü=! kullanarak operatör. Neden bu kabul tarzı kötü.

CEVAP
24 NİSAN 2010, CUMARTESİ


typeof tanımlayıcı daha önce bildirilmiş olması sağlar. Bu konuda daha güvenli.

if(typeof neverDeclared == "undefined") //no errors

if(neverDeclared == null) //throws ReferenceError: neverDeclared is not defined

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Lamarr Wilson

    Lamarr Wilso

    27 Aralık 2008
  • Lin Steven

    Lin Steven

    17 EKİM 2006
  • MrDevin521

    MrDevin521

    18 Temmuz 2010