混合两个向量:[aa]和[bb]到[abab]

Ant*_*ald 2 clojure clojurescript

如何将两个给定的向量混合到一个新的向量中,该向量以交替的顺序保存它们的值.

(f [a a] [b b]) ; > [a b a b]
Run Code Online (Sandbox Code Playgroud)

我想到了这个:

(flatten (map vector [:a1 :a2] [:b1 :b2]))
Run Code Online (Sandbox Code Playgroud)

但也许有一种更简单的方法.

Lee*_*Lee 8

你可以使用interleave:

(interleave [:a :a] [:b :b])
Run Code Online (Sandbox Code Playgroud)