什么是将一个地图矢量中的值添加到另一个具有与给定键相同的值的地图矢量的惯用方式,其中地图没有具有相同的密钥名称。 IE浏览器。Clojure:如何合并具有相同值的地图矢量
(def v1
[{:name "name1" :address "address1"}
{:name "name2" :address "address2"}])
(def v2
[{:title "name1" :datofBirth "1-1-1971"}
{:title "name3" :dateOfBirth "2-1-1971"}])
和合并的结果应该是
res
[{:name "name1" :address "address1" :dateofBirth "1-1-1971"}
{:name "name2" :address "address2" :dateOfBirth nil}]
调用应该是这个样子
(join v1 v2 :name :title)
而且身体应该是这个样子,也许assoc命令,在应该使用
(assoc-in v1 [(map-where-the-values-are-the-same) :key2] (value-from-the-2nd-map))
是否有可能在相同的矢量上重复一个密钥?例如有超过一个元素:标题'name1'? –
@GuillermoWinkler我不这么认为,但它有可能......数据来自API调用,所以它可能发生 – Vesna