Determining "Truthiness" of an expression? [duplicate]
Possible Duplicates:
Check if Ruby object is a Boolean How can I avoid truthiness in Ruby?
Given an array like the following (for example):
[3, false, "String", 14, "20-31", true, true, "Other String"]
Is there an easier way to determine which elements are actual boolean values without resorting to this, for exa开发者_运维技巧mple?
value === TrueClass || value === FalseClass
Relying on the position in the array is not an option, as it will vary from case-to-case.
You could try (true & value) == value
. The part in parentheses seems to always return a boolean; if the value wasn't originally a bool, then it won't be equal to the result. A bool, however, will.
精彩评论