我发现自己在反复寻找nil?,空白?空的?在Ruby on Rails中。这是我最接近的结果:

空白的吗?对象为false、空或空白字符串。例如,"","",nil,[],{}为空。 nil ?对象是NilClass的实例。 空的吗?对象是特定于类的,定义因类而异。如果字符串没有字符,则字符串为空;如果数组不包含项,则数组为空。

是否遗漏了什么,或者可以进行更紧密的比较?


当前回答

所有都是nil?是空白的? 什么都是空的?是空白的? 没有空的东西?是零? 没有什么是nil?是空的吗?

Tl, dr——只用空白?&礼物吗?除非你想区分""和""

其他回答

延伸朱利安的表格:

Ref: empty? blank? nil? Stupid can't tell the difference

只是关于any的一点注释?推荐:他说得对,它通常相当于!empty?。然而,任何?将返回true,返回一个只有空格的字符串(ala " ")。

当然,也可以看到上面1.9的评论。

所有都是nil?是空白的? 什么都是空的?是空白的? 没有空的东西?是零? 没有什么是nil?是空的吗?

Tl, dr——只用空白?&礼物吗?除非你想区分""和""

快速提示:!obj.blank?= = obj.present吗?

在某些表达中是否方便/更方便眼睛

我用所有的案例做了一个有用的表格:

空白的吗?,现在呢?是由Rails提供的。