Cách thức thành ngữ để kiểm tra xem một khóa trên bản đồ có giá trị không? Ví dụ, nếu chúng ta có:Cách thức thành ngữ để kiểm tra xem một khóa trên bản đồ có giá trị là
=> (def seq-of-maps [{:foo 1 :bar "hi"} {:foo 0 :bar "baz"}])
Để tìm hiểu tất cả các bản đồ với: foo == 0, tôi thích:
=> (filter (comp zero? :foo) seq-of-maps)
({:foo 0, :bar "baz"})
Nhưng nếu tôi muốn tìm tất cả các bản đồ với: thanh == "Xin chào", điều tốt nhất mà tôi có thể nghĩ đến là:
=> (filter #(= (:bar %) "hi") seq-of-maps)
({:foo 1, :bar "hi"})
mà tôi không thấy dễ đọc. Có cách nào tốt hơn/thành ngữ hơn để làm điều đó không?
Ý tưởng hay, tôi thích nó. Cũng giống như một bên, trong mã, cuộc gọi cuối cùng của bạn dường như không khớp với 'seq-of-maps' mà bạn xác định trong dòng đầu tiên. –
Rất tiếc trên bản sao/dán, đã khắc phục! – mikera