-3

在 JavaScript 中,我可以写出极富表现力的:

console.log(foo.name || 'No Name');

是否有任何与该简短表达式等效的 Ruby?

4

2 回答 2

5

我很少使用 ruby​​,但它应该几乎相同。

>> name = false
=> false
>> puts name || "no name"
no name
于 2012-10-03T16:28:38.563 回答
1

这与 Ruby 完全相同:

def test(x)
  puts x
end

var = nil
test( var || 'No Name') #=> No Name

var = 'something'
test( var || 'No Name') #=> something

您也可以使用相同的技术在未初始化变量时对其进行初始化:

var ||= 'data'
于 2012-10-03T16:30:48.407 回答