2014-02-22 60 views

回答

2

"page/action".split("/")在Ruby中創建數組

然後controller_name, action = "page/action".split("/")它導致並行分配,由splatting數組,由String#split方法創建。

下面是所有處理的中間步驟/對你採取紅寶石本身:

controller_name, action = "page/action".split("/") 
      ↓ 
controller_name, action = ['page','action'] # <- intermediate 
      ↓ 
controller_name, action = *['page','action'] # <- intermediate 
      ↓ 
controller_name, action = 'page','action' # final assignment happened now. 

閱讀Parallel Assignment

可以崩潰使用Ruby的平行分配擴大陣列運營商。如果最後一個左值前面有一個星號,則所有剩餘的右值將被收集並作爲數組分配給該左值。類似的,如果最後一個右值是一個數組,你可以在它前加一個星號,它可以有效地將它擴展爲它的組成值。 (如果右值只有右值---數組將自動擴展,這不是必需的。)

+0

瞭解,謝謝你的解釋。 –

相關問題