In clojure I can use defnk to get named parameters. How can I achieve the same thing in ClojureScript?
The named args functionality in ClojureScript is the same as in Clojure:
(defn f [x & {:keys [a b]}]
(println (str "a is " a " and b is " b)))
(f 1)
; a is and b is
(f 1 :a 42)
; a is 42 and b is
(f 1 :a 42 :b 108)
; a is 42 and b is 108
If you want default values, then change the original to:
(defn f [x & {:keys [a b] :or {a 999 b 9}}]
(println (str "a is " a " and b is " b)))
(f 1)
; a is 999 and b is 9
This is related to the nice answer for Clojure - named arguments
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With