158 votes

Ce qui est une façon simple / élégante en Ruby pour savoir si une variable donnée est un hachage ou un tableau ?

Pour vérifier ce que `` est, je fais un

Je ne sais pas il y a une façon plus élégante pour vérifier si est un ou un `` .

286voto

Pete Points 6648

Vous pouvez juste faire :

ou aussi quelque chose comme :

Il est à noter que la méthode de « is_a ? » est true si la classe est n’importe où dans l’arborescence des objets ascendance. par exemple :

ce qui précède est vrai si @some_var est une instance d’un hachage ou autre classe qui découle de l’objet. Donc, si vous souhaitez une correspondance stricte sur le type de classe, en utilisant le == ou instance_of ? méthode est probablement ce que vous recherchez.

41voto

cabo Points 332

Wow, je suis surpris par le nombre de personnes qui n’ont même pas la question.

Tout d’abord, est la meilleure réponse pour la question littérale

Mais vraiment devrait avoir été répondre à la question en indiquant comment faire canard-frappe ici. Cela dépend un peu sur ce genre de canard dont vous avez besoin.

ou

ou même

peuvent convenir selon l’application.

26voto

Brandon Points 1912

Habituellement en ruby lorsque vous êtes à la recherche pour « type » vous êtes réellement désireux le type « canard » ou « fait est charlatan comme un canard ? ». Vous verriez si elle répond à une certaine méthode :

Vous pouvez itérer sur @some_var parce qu’elle répond à : chaque

Si vous voulez vraiment savoir le type et s’il est hachage ou un tableau, alors vous pouvez faire :

12voto

Guten Points 871
<pre><code></code><p>Cela peut également être utilisé avec l’instruction case</p><pre><code></code></pre></pre>

3voto

Shiv Points 3971

Vous pouvez utiliser``

par exemple

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X