In der Ruby-Programmiersprache wird in diesem Artikel vorgestellt, wie man each_with_index mit Hashes und Arrays verwendet, um eine spezielle Verarbeitung nur für das erste und letzte Element durchzuführen.
Beispiel: Möchte JSON-Format aus einem Hash erstellen. Möchte das , direkt vor } entfernen.
h = {:a => "hoge", :b => "fuga", :c => "foo"}
@json = '{'
h.each_with_index do |(k, v), i|
if i == 0
# Verarbeitung für das erste Element
end
if i == h.size - 1
# Verarbeitung für das letzte Element
@json << %("#{k}":"#{v}")
else
@json << %("#{k}":"#{v}",)
end
end
@json << '}'
puts @json #=> {"a":"hoge","b":"fuga","c":"foo"}
Diese Methode kann auch mit Arrays verwendet werden. Für Arrays,
ändern Sie den Teil |(k, v), i| in |e, i|.