Ruby中好用的判断true/false的类

直观感受一下:

2.6.5 :001 > a="0"
 => "0"
2.6.5 :002 > ActiveModel::Type::Boolean.new.cast(a)
 => false
2.6.5 :003 > ActiveModel::Type::Boolean.new.cast(a) ? "yes" : "no"
 => "no"
2.6.5 :004 > a="f"
 => "f"
2.6.5 :005 > ActiveModel::Type::Boolean.new.cast(a)
 => false
2.6.5 :006 > a=1
 => 1
2.6.5 :007 > ActiveModel::Type::Boolean.new.cast(a)
 => true
2.6.5 :008 > a=""
 => ""
2.6.5 :009 > ActiveModel::Type::Boolean.new.cast(a)
 => nil

没错,就是ActiveRecord::Type::BooleanActiveRecord::Type::Booleanicon-default.png?t=M4ADhttps://api.rubyonrails.org/classes/ActiveModel/Type/Boolean.html

判断依据:

"false", "f" , "0", 0 或 FALSE_VALUES 中的任何其他值将被转换为 false;空的字符串将被转换为nil;所有其他的值将被转换为真。

FALSE_VALUES	=	[ false, 0, "0", :"0", "f", :f, "F", :F, "false", :false, "FALSE", :FALSE, "off", :off, "OFF", :OFF, ].to_set.freeze

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值