[英]Understanding Ruby method parameters syntax
我一直在關注有關Pluralsight的RSpec教程,以創建基本的紙牌游戲。 當這樣定義類時:
class Card
def initialize(suit:, rank:)
@suit = suit
@rank =
case rank
when :jack then 11
when :queen then 12
when :king then 13
else rank
end
end
end
RSpec測試代碼例如:
RSpec.describe 'a playing card' do
it 'has a suit' do
raise unless Card.new(suit: :spades, rank: 4).suit == :spades
end
end
我還沒有遇到這樣的方法參數語法(suit: :spades, rank: 4)
。 有人可以解釋一下這是什么意思,或向我指出在哪里查找的正確方向嗎?
這稱為關鍵字參數 。 與位置參數不同,可以按任何順序傳遞它們,但是必須提供它們的名稱。 這可以大大提高可讀性,尤其是對於具有較高Arity的方法。 有關此主題的更多信息
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.