我曾经看到建议使用some
代替(first (filter
,但是它们的工作方式存在差异,我的理解有些困惑。请问有谁能够解释一下为什么这两者不能产生相同的结果呢?
(some (comp #{:fu} :id) [{:id :fu :baz :bar}])
> :fu
(first (filter (comp #{:fu} :id) [{:id :fu :baz :bar}]))
> {:id :fu, :baz :bar}
有没有其他的方式可以更简洁地执行 (first (filter
,也就是获取满足条件的第一个项目?