SORU
13 Mart 2009, Cuma


Nasıl bir nesne bir tarih olup olmadığını kontrol etmek için?

Bir web sayfasında rahatsız edici bir hata var: "tarih.() GetMonth fonksiyonu değildir". Bir yerlere beri yanlış bir şey yapıyorum sanırım ve nesne türü tarih Tarih bir nesne değildir.Nasıl Javascript veri türü için kontrol edebilirim?Bir eklemeye çalıştım(tarih)ama çalışmıyor.

function getFormatedDate(date) {
    if (date) {
       var month = date.GetMonth();
    }
}

Eğer öyleyse defansif kod yazmak ve Tarih değil) biçimlendirilmiş olmasını engellemek istiyorum, nasıl yapabilirim?

Teşekkürler!

GÜNCELLEME:Tarih biçimini kontrol etmek istemiyorum, ama parametre getFormatedDate tür yönteme geçirildi Tarih emin olmak istiyorum.

CEVAP
13 Mart 2009, Cuma


Ördek alternatif) yazmak gibi

typeof date.getMonth === 'function'

instanceof operatörünü kullanabilirsiniz, yani

date instanceof Date

Bu nesneleri çerçeve sınırlarında geçirilirse başarısız olur.

A) bu nesnenin sınıf kontrol etmek için bir çözüm

Object.prototype.toString.call(date) === '[object Date]'

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • GALERNAYA20

    GALERNAYA20

    19 NİSAN 2011
  • Glove and Boots

    Glove and Bo

    1 ŞUBAT 2007
  • TimMinchinLive

    TimMinchinLi

    23 ŞUBAT 2009