Apa perbedaan antara
case item.class
when MyClass
# do something here
when Array
# do something different here
when String
# do a third thing
end
dan
case item.class
when MyClass.class
# do something here
when Array.class
# do something different here
when String.class
# do a third thing
end
Untuk beberapa alasan, yang pertama kadang-kadang bekerja dan yang kedua tidak, dan kali lain, yang kedua bekerja dan yang pertama tidak. Mengapa? Mana yang merupakan cara yang "tepat" untuk melakukannya?
MyClass === obj
menggunakan metode Module # === untuk memeriksa apakah obj
merupakan instance dari MyClass
.