-1

我目前有这个代码

def objects(ids)
  array = []

  ids.each do |id|
    array << object(id) # => #<object[id]>
  end

  array
end

objects([1, 2, 3])
# => [#<object1>, #<object2>, #<object3>]

似乎应该有一种更清洁的方法来做到这一点。任何人都可以帮忙吗?

4

1 回答 1

1

编辑 这是有效的

[1, 2, 3].map do |id|
  object(id)
end

原来 这样:

[1, 2, 3].map(&:object_id)
# => [3, 5, 7]

def objects(ids)
  ids.map(&:object_id)
end

objects([1, 2, 3])
# => [3, 5, 7]
于 2013-08-15T15:05:24.563 回答