5

我有这样的结构图

(def admin (struct-map person :first-name "Name" :last-name "Last name"))

所以,现在我想向这张地图添加新的键值对,让它看起来像

(def admin (struct-map person :first-name "Name" :last-name "Last name" :username "username"))

我该怎么做呢?

我知道在此之后它不会是相同的结构,但这没关系。

4

1 回答 1

5

如果您不关心保留结构,assoc将添加新的键值对。

(defstruct person :first-name :last-name)

(def admin (struct-map person 
             :first-name "Name" 
             :last-name "Last name"))

(assoc admin :username "username")
  ;=> {:first-name "Name", :last-name "Last name", :username "username"}
于 2013-09-19T07:24:47.423 回答