根据索引合并clojure中地图的两个向量

发布于 2025-01-09 16:42:56 字数 382 浏览 3 评论 0原文

我在 clojure 中有两个地图向量,我希望将它们合并,使其成为单个地图向量,但每个索引处的地图都被合并。我只是想知道做到这一点的最佳方法。

例如:

[{:sku "e1" :name "example1"} {:sku "e2" :name "example2"}]
[{:color "Blue" :price 9.99} {:color "Red" :price 15.99}]

将合并到:

[{:sku "e1" :name "example1" :color "Blue" :price 9.99} {:sku "e2" :name "example2" :color "Red" :price 15.99}]

I have two vectors of maps in clojure, and I wish to merge them so that it is a single vector of maps, but the maps at each index are merged. I was just wondering the best way to do this.

For example:

[{:sku "e1" :name "example1"} {:sku "e2" :name "example2"}]
[{:color "Blue" :price 9.99} {:color "Red" :price 15.99}]

Would be merged to:

[{:sku "e1" :name "example1" :color "Blue" :price 9.99} {:sku "e2" :name "example2" :color "Red" :price 15.99}]

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

荒路情人 2025-01-16 16:42:56

使用 mapv合并

(mapv merge 
      [{:sku "e1" :name "example1"} {:sku "e2" :name "example2"}]
      [{:color "Blue" :price 9.99} {:color "Red" :price 15.99}])

=> [{:sku "e1", :name "example1", :color "Blue", :price 9.99} {:sku "e2", :name "example2", :color "Red", :price 15.99}]

Use mapv and merge:

(mapv merge 
      [{:sku "e1" :name "example1"} {:sku "e2" :name "example2"}]
      [{:color "Blue" :price 9.99} {:color "Red" :price 15.99}])

=> [{:sku "e1", :name "example1", :color "Blue", :price 9.99} {:sku "e2", :name "example2", :color "Red", :price 15.99}]
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文