在Ruby中惯用的括号

array.include? 'foo' or array.include? 'bar'

一个语法错误(意外的keyword_or).括号解决问题,但由于我是Ruby的新手,我不知道以下哪一个被认为是更习惯的:

选项1

array.include?('foo') or array.include?('bar')

选项2

(array.include? 'foo') or (array.include? 'bar')

这是否属于个人偏好,还是被认为更为“正确”的方法

解决方法

我建议你看看 community-driven Ruby coding style guide,这里特别是 Syntax的部分.

忽略作为内部DSL(例如Rake,Rails,RSpec)一部分的方法的参数的括号,在Ruby中具有“关键字”状态的方法(例如attr_reader,puts)和属性访问方法.在所有其他方法调用的参数周围使用括号. – 摘自指南

class Person
  attr_reader :name,:age

  # omitted
end

temperance = Person.new('Temperance',30)
temperance.name

puts temperance.age

x = Math.sin(y)
array.delete(e)

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...