1
defmodule CompareMaps do
def match do
map = %{a: 2, b: 3, c: 4}
test = %{a: 3}
match? test, map
end
end
CompareMaps.match
true
Derselbe Vergleich in iex führt jedoch zum gegenteiligen Ergebnis.Elixiermatch? Funktioniert nicht im Modul
Was ein guter Weg ist, Karten zu vergleichen, wenn ich Muster versuchen Matching und sie nicht übereinstimmen Elixier wirft einen Fehler? Muss ich Schlüsselwerte einzeln durchlaufen und vergleichen? –
Ja, Sie müssen die Überprüfung selbst durchführen. Es ist nicht viel Code: 'Enum.all? (Test, fn {k, v} -> map [k] == v Ende) # => false',' Enum.all? (% {A: 2, b: 3}, fn {k, v} -> Karte [k] == v Ende) # => wahr '. – Dogbert