SORU
20 Mart 2011, Pazar


Ruby basit / zarif bir şekilde eğer belirli bir değişken bir Karma veya bir Dizi olduğunu söylemek nedir?

@some_var ne olduğunu kontrol etmek için yapıyorum

if @some_var.class.to_s == 'Hash' 

@some_var Hash Array Bir olup olmadığını kontrol etmek için daha şık bir yolu yoktur eminim.

CEVAP
20 Mart 2011, Pazar


Sadece yapabilirsiniz:

@some_var.class == Hash

ya da bir şey gibi:

@some_var.is_a?(Hash)

"İs_a? ... sınıftaki her yerde nesneleri soy ağacı. eğer" doğru yöntem olduğunu belirtmekte yarar var örneğin:

@some_var.is_a?(Object)  # => true

yukarıda ise @some_var Nesne kaynaklanan bir karma veya başka bir sınıfın bir örneği ise geçerlidir. Eğer bir sınıf türü üzerinde sıkı bir maç istiyorsan, = = veya instance_of kullanarak? yöntem sizin için ne arıyorsanız muhtemelen.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • captainpuppys2000

    captainpuppy

    20 HAZİRAN 2013
  • wwjoshdew

    wwjoshdew

    1 AĞUSTOS 2007
  • Yanko Kral

    Yanko Kral

    8 HAZİRAN 2006