当前位置:  开发笔记 > 编程语言 > 正文

clojure:为地图矢量添加索引

如何解决《clojure:为地图矢量添加索引》经验,为你挑选了1个好方法。

我有一张地图矢量.我想为每个元素关联一个索引元素.

例:

(append-index [{:name "foo"} {:name "bar"} {:name "baz"}])

应该回来

[{:name "foo" :index 1} {:name "bar" :index 2} {:name "baz" :index 3}]

实现append-index函数的最佳方法是什么?



1> Leonid Besch..:

首先,Clojure开始计算0中的向量元素,所以你可能想要得到

[{:index 0, :name "foo"} {:index 1, :name "bar"} {:index 2, :name "baz"}]

你可以通过功能很容易地做到这一点map-indexed

(defn append-index [coll]
  (map-indexed #(assoc %2 :index %1) coll))

推荐阅读
贾志军
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有