/ / Ruby- oder Rails-Array-Iterationssyntax - Ruby-on-Rails, Arrays, Ruby, Iteration

Ruby- oder Rails-Array-Iterationssyntax - Ruby-on-Rails, Arrays, Ruby, Iteration

Ich bin auf einen Weg gestoßen, in dem ein Programm das extrahiert hat name Eigenschaft eines Objekts und fand die Syntax ein wenig eigenartig. Hierbei handelt es sich um die Ergebnisse der JSON-Antwort.

Unsere JSON-Antwort wäre die folgende =

[{"id"=>9, "name"=>"Baked Potato w/ Cheese", "instructions"=>nil},
{"id"=>12, "name"=>"Baked Brussel Sprouts", "instructions"=>nil}]

results = JSON.parse(response.body)

def extract_name
->(object) { object["name"] }
end

results.map(&extract_name)

Also ich verstehe das results.map(&extract_name) gibt das zurück name Von den JSON - Objekten verstehe ich nur nicht, wie.

Ich bin nicht vertraut mit der ->(object) { object["name"] } Syntax. Gibt es andere Kurzformen, die mir helfen könnten, eine bessere Vorstellung von dieser Art von Syntax zu bekommen?

Antworten:

2 für die Antwort № 1

Der Pfeil -> ist eine kurze Syntax zum Erstellen von Lambas. Sehen "Wie nennt man den Operator -> in Ruby?".

Ein alternativer Weg könnte der folgende Ausschnitt sein:

results.map { |object| object["name"] }