2013-07-19 40 views
-1

我對符號的含義有個簡單的問題(我認爲)。 || =在ruby中意味着什麼?我有一個代碼片段說:|| =符號的含義

... ||= [nil]

是爲 「< <」?普通的方法?

+0

請關閉我的重複發現,而不是另一個;鏈接的副本提供了更多的深度和關於答案中的具體操作的焦點。 – user2246674

+0

參見[在Ruby中'|| ='是什麼意思?](http://stackoverflow.com/questions/995593/what-does-or-equals-mean-in-ruby)。 –

回答

4
x ||= y 

手段(幾乎)一樣的東西

x = x || y 

(只計算x一次,雖然)。

它主要用於檢查變量是否falsy(nilfalse),如果是,則將其設置爲默認值。

+2

它在Ruby中不完全等價(儘管它在JavaScript中)。請參閱http://stackoverflow.com/a/2505285/2246674,它解釋了更好的近似。 – user2246674

+0

太好了。謝謝:) – Howarto

+0

@Howarto不客氣':)' – Doorknob