-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 に答える