为了检查是什么@some_var
,我正在做一个
if @some_var.class.to_s == 'Hash'
我敢肯定有一种更优雅的方法来检查@some_var
a Hash
或an Array
。
1
安德鲁:我正在调用一个API,然后返回JSON,如果有多个结果,我得到一个数组,但是如果只有一个,我得到一个哈希,而不是单个元素数组。是否有比进行Array vs Hash检查更好的选择?
—
drhyde 2011年
所以,你要么
—
安德鲁·格林
[result_hash, another_result_hash]
还是single_result_hash
?创建该API的人做得不好!
你说得对,安德鲁,我敢打赌这是很多更容易得到谁写的API来解决它,而不是测试的哈希与数组中的人。
—
Olivier'Ölbaum'Scherler '12
我和@drhyde的情况一样。在我的情况下,第3方是HTTParty,它在解析XML文件后无法决定什么是处理元素可以具有1-n个子元素的最佳方式。
—
肮脏的亨利
您应该观看Avdi Grimms的截屏视频:rubytapas.com/2016/10/17/episode-451-advanced-class-membership,并且可能使专家组回答被接受的问题。
—
亚历山大·普雷斯伯