-
[Ruby] exercise _ Map By Namecoding for food 2022. 8. 6. 04:36
Write a method map_by_name that takes in an array of hashes and returns a new array containing the names of each hash.
def map_by_name(arr) end pets = [ {"type"=>"dog", "name"=>"Rolo"}, {"type"=>"cat", "name"=>"Sunny"}, {"type"=>"rat", "name"=>"Saki"}, {"type"=>"dog", "name"=>"Finn"}, {"type"=>"cat", "name"=>"Buffy"} ] print map_by_name(pets) #=> ["Rolo", "Sunny", "Saki", "Finn", "Buffy"] puts countries = [ {"name"=>"Japan", "continent"=>"Asia"}, {"name"=>"Hungary", "continent"=>"Europe"}, {"name"=>"Kenya", "continent"=>"Africa"}, ] print map_by_name(countries) #=> ["Japan", "Hungary", "Kenya"] puts
my code
def map_by_name(arr) new_arr = [] arr.map do |hash| hash.each do |key, value| if key == "name" new_arr << hash[key] end end end return new_arr end
solution
def map_by_name(arr) return arr.map { |hash| hash["name"] } end