簡體   English   中英

了解Ruby方法參數語法

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM