Clojure - 更新向量内的哈希映射[重复]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Clojure - 更新向量内的哈希映射[重复]相关的知识,希望对你有一定的参考价值。

这个问题在这里已有答案:

我们假设我有以下向量

[{:id "1" :type "type"}, {:id "2" :type "another-type"}]

我想编写一个更新hashmap的函数,具体取决于它的id。

(defn update
  [vector id value]
  ....)

结果将是:

(update vector "1" "value")

[{:id "1" :type "type" :new-key ["value"]}, {:id "2" :type "another-type"}]

执行此更改的最惯用方法是什么?

答案
(mapv 
  (fn [m]
    (if (= "1" (:id m)) (assoc m :new-key ["value"]) m))
  vector)

以上是关于Clojure - 更新向量内的哈希映射[重复]的主要内容,如果未能解决你的问题,请参考以下文章