加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

惯用的红宝石过滤器为零或空?

发布时间:2020-12-16 19:51:34 所属栏目:百科 来源:网络整理
导读:我正在寻找一种更为惯用的方法来过滤掉数组的零或空的元素. 我有很多形式的方法: def joined [some_method,some_other_method].compact.reject(:empty?).join(' - ')end 这将得到some_method和some_other_method的结果,并且只返回非零(一个非常小的本质上等
我正在寻找一种更为惯用的方法来过滤掉数组的零或空的元素.

我有很多形式的方法:

def joined
    [some_method,some_other_method].compact.reject(&:empty?).join(' - ')
end

这将得到some_method和some_other_method的结果,并且只返回非零(一个非常小的本质上等同于reject(&:nil?))和非空的一个.

Array或Enumerable中有什么可以在一个镜头中获得相同的东西吗?

解决方法

在Rails中,您可以拒绝(&:blank?),或者等同地选择(&:present?).

如果这不是一个Rails应用程序,并且你做了很多,我建议你定义你自己的帮助字符串或其他任何你要过滤.

class String
  alias :blank? :empty?
end

class NilClass
  def blank?
    true
  end
end

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读