【问题标题】:Meaning of ||= symbol [duplicate]||= 符号的含义[重复]
【发布时间】:2013-07-19 23:27:52
【问题描述】:

我有一个关于符号含义的简单问题(我认为)。 ||= 在红宝石中是什么意思?我有一个代码 sn-p 说:

...||= [nil]

是作为“

【问题讨论】:

  • 请关闭我的重复发现,而不是另一个;我链接到的副本提供了更多关于答案中特定操作的深度和重点。

标签: ruby symbols


【解决方案1】:
x ||= y

意思(几乎)与

相同
x = x || y

(不过,它只计算一次 x。)

它主要用于检查变量是否为假(nilfalse),如果是,则将其设置为默认值。

【讨论】:

  • 它在 Ruby 中不是严格等价的(尽管它在 JavaScript 中)。请参阅stackoverflow.com/a/2505285/2246674,它解释了更好的近似值。
  • @Howarto 不客气:)
  • 它实际上表现得像x || x = y,尽管大多数时候不会有任何区别。见rubyinside.com/…
猜你喜欢
  • 2014-09-16
  • 1970-01-01
  • 2014-09-14
  • 2014-07-08
  • 2016-12-09
  • 2013-03-11
  • 1970-01-01
  • 2021-02-09
  • 2013-07-18
相关资源
最近更新 更多