我应该如何在哈希上使用each_with_object?

Pie*_*ois 45 ruby

我想each_with_object在哈希上使用,但无法弄清楚我应该如何使用它.这是我有的:

hash = {key1: :value1, key2: :value2}
hash.each_with_object([]) { |k, v, array| array << k }

NoMethodError: undefined method `<<' for nil:NilClass
Run Code Online (Sandbox Code Playgroud)

是否可以each_with_object在哈希上使用?如果是,语法是什么?

apn*_*ing 97

用途():

hash.each_with_object([]) { |(k, v), array| array << k }
Run Code Online (Sandbox Code Playgroud)

  • @andfb18 它被称为“数组分解”,您可以在 [此处](https://ruby-doc.org/core-2.4.3/doc/syntax/assignment_rdoc.html#label-Array+Decomposition)了解它。 (2认同)