Ruby on rails ||运算符与=运算符相同?
我在AgileRails编程书中看到了这段摘录:Ruby on rails ||运算符与=运算符相同?,ruby-on-rails,Ruby On Rails,我在AgileRails编程书中看到了这段摘录: module StoreHelper def page_title @page_title || "Pragmatic Store" end end 我可以把| |改为=?否 这意味着page\u title如果不是nil,将返回@page\u title,如果@page\u title为nil,则返回“实用存储”。(nil为空)否 这意味着page\u title如果不是nil,将返回@page\u title,如果@page\u
module StoreHelper
def page_title
@page_title || "Pragmatic Store"
end
end
我可以把| |改为=?否
这意味着page\u title
如果不是nil,将返回@page\u title
,如果@page\u title
为nil,则返回“实用存储”
。(nil为空)否
这意味着page\u title
如果不是nil,将返回@page\u title
,如果@page\u title
为nil,则返回“实用存储”
。(nil为空)较长的答案是,您偶然发现了一种流行的编程风格,因为它非常简洁,但仍然易于理解。这是一种快捷的写作方式:
if ! @page_title.nil?
return @page_title
else
return "Pragmatic Store"
end
这样,一行逻辑or就不需要if/then。它之所以这样做是因为| |的计算方式:从左到右,停在第一个不是假的项目上。您发现的示例也省略了return关键字,因为这里不需要它。较长的答案是,您偶然发现了一种编程风格,这种风格非常流行,因为它非常简洁,但仍然易于理解。这是一种快捷的写作方式:
if ! @page_title.nil?
return @page_title
else
return "Pragmatic Store"
end
这样,一行逻辑or就不需要if/then。它之所以这样做是因为| |的计算方式:从左到右,停在第一个不是假的项目上。您发现的示例也省略了return关键字,因为这里不需要它。或nil。15个字符的注释TwnwjiqiqhHeiffjhfalso请注意,在Ruby中,如果一条语句不包含任何函数,而是包含在函数或方法中,则该语句将自动返回。@Time Machine:如果它是该方法的最后一行,则不必是最后一条语句是否为if then else
,对吗?或为零。15个字符的注释TwnwjiqiqhHeififjhfalso请注意,在Ruby中,如果一条语句不包含任何函数,而是包含在函数或方法中,它将自动返回。@Time Machine:如果它是该方法的最后一行,则不必是如果最后一条语句是if then else
,对吗?