Tôi muốn thay thế từng cái value
trong một hàm băm bằng value.some_method
.
Ví dụ, với một hàm băm đơn giản:
{"a" => "b", "c" => "d"}`
mọi giá trị phải là .upcase
d, vì vậy nó trông giống như:
{"a" => "B", "c" => "D"}
Tôi đã cố gắng #collect
và #map
luôn luôn nhận được mảng trở lại. Có một cách thanh lịch để làm điều này?
CẬP NHẬT
Chết tiệt, tôi quên mất: Băm nằm trong một biến thể không nên thay đổi. Tôi cần một hàm băm mới với các giá trị đã thay đổi, nhưng không muốn xác định rõ ràng biến đó và sau đó lặp lại hàm băm. Cái gì đó như:
new_hash = hash.magic{ ... }