5

我有一个函数向量(def my-func [a b c d])。每个函数都将最后一个函数的输出作为输入。我想通过它们进行输入,我该怎么做?

如何获得以下表格(-> in a b c d)

谢谢,穆尔塔萨

4

2 回答 2

6

您可以使用comp,但请注意它从右到左执行功能

((comp d c b a) 10)

或者

((apply comp my-fns) 10)

将 10 传递给第一个函数,结果传递给下一个函数,依此类推。

于 2012-09-19T17:37:52.623 回答
5

我认为您可以使用以下reduce功能:

(def fns [inc inc inc])
(reduce (fn [v f] (f v)) 10 fns)
于 2012-09-19T10:53:09.520 回答