我有下面的嵌套对象正在通过each_value
{"B"=>#<Destination:0x2998b60 @city=#<City:0x2998bc0 @name="B", @destinations=
{"C"=>#<Destination:0x2998a28 @city=#<City:0x2998aa0 @name="C", @destinations=
{"A"=>#<Destination:0x2998920 @city=#<City:0x2998c20 @name="A", @destinations={...}>, @distance=3>}
>, @distance=2>}
>, @distance=1>}
在下面的循环中
@destinations.each_value do |dest|
puts dest.city
dest.city.all_routes_to(end_of_route, maximum_stops, stops + 1).each do |connection|
connected_routes << build_route_to(dest).connect(connection)
end
end
我没有得到的是当我运行这个时,我得到 B,C,A
所以我认为它each_value
也循环遍历了它的所有子对象,但在 Ruby 文档中找不到它。
这是这个功能的工作原理还是我错过了什么?