ruby - 如何检查 Ruby 对象是否为 bool 值

标签 ruby typechecking

我似乎无法轻松地检查对象是否为 bool 值。 Ruby 中有这样的东西吗?

true.is_a?(Boolean)
false.is_a?(Boolean)

现在我正在做这个并且想缩短它:

some_var = rand(1) == 1 ? true : false
(some_var.is_a?(TrueClass) || some_var.is_a?(FalseClass))

最佳答案

我能想到的最简单的方法:

# checking whether foo is a boolean
!!foo == foo

关于ruby - 如何检查 Ruby 对象是否为 bool 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3028243/

相关文章:

swift - FaSTLane "nokogiri requires Ruby version >= 2.3.0."错误

ruby - 合并哈希数组中的重复项

ruby - 为什么处理我的 CSV 文件需要很长时间才能完成?

javascript - 如何为排除无穷大和 NaN 的数字声明 Flow 类型?

c# - 即使枚举类型被密封,foreach 也不会进行类型检查

interface - 如何在 F# 中检查对象是否实现接口(interface)

javascript - 通过 AJAX 将 Rails 变量传递给部分?

ios - 如何将 iOS 函数转换为 Ruby。生成 hmac-sha1 哈希值?

python - 如何让 python 类型检查器知道它应该返回其类的新实例?

python - 提供与 Python 3.6 变量注释的向后兼容性