微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在Ruby中使用后缀“if”语句的目的是什么?

我知道 Ruby支持后缀,如果:
number = -42 if opposite

但是这个目的是什么?为什么它将用于代替前缀if语句?

解决方法

后缀式if和除非也适用于“后卫条款”,形式如下:
return if ...
return unless ...

这是一个例子:

# suffix-style
def save
  return false if invalid?
  # go for it
  true
end

与:

# indented style
def save
  if valid?
    # go for it
    true
  else
    false
  end
end

在第二个例子中,由于有效的方法,方法的整个实现必须被一个缩进移位?检查,我们需要一个额外的else子句.用后缀样式,无效? check被认为是我们处理然后拯救的边缘情况,并且该方法的其余部分不需要缩进或else子句.

这有时被称为“保护条款”,并且是Ruby样式指南的recommended.

原文地址:https://www.jb51.cc/ruby/267739.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐