【发布时间】:2014-02-28 13:52:52
【问题描述】:
将值从一个映射向量添加到另一个具有给定键值的映射向量的惯用方法是什么,其中映射没有相同的键名称。 IE。
(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)
body 应该是这样的,也许应该使用 assoc-in
(assoc-in v1 [(map-where-the-values-are-the-same) :key2] (value-from-the-2nd-map))
【问题讨论】:
-
一个键可以在同一个向量上重复吗?例如有多个元素 :title
name1? -
@GuillermoWinkler 好吧,我不这么认为,但有可能...数据来自 API 调用,所以它可能会发生