0

Hash我已经看到了很多使用方法的 Ruby 类示例,但delete我不确定使用它的好处是什么。

例子:

class Example
  def initialize(default_params = {})
    @foo = default_params.delete(:bar)
  end
end

任何见解都会非常有帮助!谢谢!

4

1 回答 1

1

Hash#delete在以下情况下很有用:

def method(options)
  if options.delete(:condition)
    # Do something if options[:condition] is true
  else
    # Otherwise do something else
  end

  # Now options doesn't have the :conditions key-value pair.
  another_method_that_doesnt_use_the_condition(options)
end

我不确定您提取的具体示例是否应该使用Hash#delete.

于 2013-10-16T18:35:59.513 回答