我有一些对象(不是所有对象)的记录,我必须检查它们是真还是假,以标记另一条记录是真还是假.这就是我现在正在做的事情:
step_finished = object.one == true && object.two == true && object.three == true && object.four == true
我敢肯定必须有一个更好的方法,但我找不到它.我有另外一步要检查20个值,所以如果你知道一个更有效的方法检查这个,请帮忙!
谢谢!
你不需要测试== true
; 只需测试某事物的"真实性"就足够了.在布尔上下文中没有nil
或false
将要评估的任何内容.所以这样就足够了:true
step_finished = object.one && object.two && object.three && object.four
您还可以使用all?
:
step_finished = [object.one, object.two, object.three, object.four].all?