Clojure - 如果value为true,则创建一个键数组

Tes*_*mas 0 clojure clojurescript

我对clojure完全不熟悉.

我有一个JSON,如: { "1": true, "2": false, "3": true, "4": false }

我想在clojure中创建一个值为true的键数组.在这个例子中,数组应该是["1", "3"].

请帮我.任何帮助,将不胜感激.

lee*_*ski 8

还有一些短而简单的片段:

user> (filter m (keys m))
;;=> ("1" "3")

user> (keep (fn [[k v]] (when v k)) m)
;;=> ("1" "3")

user> (for [[k v] m :when v] k)
;;=> ("1" "3")
Run Code Online (Sandbox Code Playgroud)