Ruby 在作业结束后放置一个区块意味着什么?

Ruby 在作业结束后放置一个区块意味着什么?,ruby,syntax,Ruby,Syntax,下面的代码片段完整地描述了这个问题,但我必须输入所有这些额外的单词,以便发布它 some_var ||= some_other_var do # Does this run every time, or only sometimes? stuff end 使用| |=运算符,将像其他任何代码一样对此类代码进行求值。如果some_var为nil或false,函数将运行,返回值将分配给some_var;否则将返回some_var的值。请参阅以供参考。您是否想过使用长度要求来提问?@Jo

下面的代码片段完整地描述了这个问题,但我必须输入所有这些额外的单词,以便发布它

some_var ||= some_other_var do
   # Does this run every time, or only sometimes?
   stuff
end

使用
| |=
运算符,将像其他任何代码一样对此类代码进行求值。如果
some_var
nil
false
,函数将运行,返回值将分配给
some_var
;否则将返回
some_var
的值。请参阅以供参考。

您是否想过使用长度要求来提问?@JoshLee问题就在标题中。你没看见吗?没什么可搜索的。谷歌不接受
| |=
作为搜索词。标题不是问题,而是介绍主题。你的问题问得不好,也没有表现出多少努力。“而且链接页面的阅读效果会很好。如果你把它放在引号里,谷歌会这样做。”。那街区呢?我发现一些代码在赋值后放置了一个块(如我的示例所示),这完全没有意义,而且在我知道的任何地方都没有记录。好吧,这应该是个语法错误。事实上,您链接到的问题没有讨论在
| |=
赋值后放置块的答案。该块只是传递给方法的“特殊类型的参数”(在您的示例中,该方法是
some_other_var
);不能将块传递给变量。将对带有已传递块的方法进行求值,并将其返回值分配给
某些\u var
。该死的Ruby及其令人困惑的语法!我不记得
some\u other\u var
实际上可以是一个方法调用。谢谢