iT邦幫忙

2017 iT 邦幫忙鐵人賽
DAY 11
0
Modern Web

Ruby礦工的Rails地圖系列 第 11

方便的lonely opperate

每天煩惱找不到靈感的時候
就從上班運用到的來找靈感
今天第一次聽到「lonely opperate」
覺得相當新奇,也是挺實用的

這個名稱是由外型得名
因為「&.」看起來很像是一個寂寞的人在角落畫圈圈

在取物件的時候,有時候會因為中間nil而產生錯誤
為了避免這種情形,可能會做下面的處理
address = account.owner.present? ? account.owner.address : nil
先判斷是否存在,再取物件

這樣的處理,也可以簡化如下:
account.try(:owner).try(:address)
用try的方式,如果nil也不會跳錯

上述的寫法可以繼續簡化,就是今天介紹的lonely opperate
account&.owner&.address

如果值存在就取值,如果不存在就回傳nil
可以當作是try的一種簡單寫法
未來取值的片段也可以寫得更簡潔,介紹給大家!


上一篇
淺談scope -- 常用的條件通通藏在裡面
下一篇
How to mix around Unlimited Array
系列文
Ruby礦工的Rails地圖30

尚未有邦友留言

立即登入留言