繁体   English   中英

如何在集合上映射(组成)函数中的多个非集合?

[英]How to map (compose) multiple non-collection in functions over collection?

我想通过一系列非集合函数传递一个集合。 可以通过多次使用地图来实现。 如何更简洁地做到这一点和Clojure /函数式编程的惯用方式:

(defn my-processor [coll]
  (let [get-text (fn [element] (:text element))
        sanitize (fn [element] (string/trim element))
        to-int (fn [element] (Integer. element))]
    (map to-int (map sanitize (map get-text coll))))) ; <-- this line

(my-processor [{:text "123"} {:text "456"}]) ; => (123 456))

那应该工作: (map (comp to-int sanitize get-text) coll)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM