sadece sağ değeri elde yapmak değişkeni bağlanmayan ve iki kez bir başka yolu yoktur kullanmak durumunda yapabilir. Özünde fnil
adlı bir işlev var.
Aramak istediğiniz işlevle ve varsayılan argümanı ile fnil
numaralı telefonu arayın. Bu, sağladığınız varsayılan değerle birlikte nils'in yerini alacaktır.
İstediğinize bağlı olarak bunlardan birini yapabilirsiniz. Yerel bir işlev oluşturun.
(her zaman aynı varsayılan argüman var) Eğer kod dışarı bunu mantığa taşımak ve özgün işlevine edildi için nereye koymak (veya diğer ihtimaline karşı fonksiyonunu sarabilirsiniz somecases ise
(let [default-fn (fnil fn-you-want-to call "default-argument")]
(default-fn input-argument))
kütüphane). Sonra
(defn fn-you-want-to-call [arg] ....)
(def fn-you-want-to-call-default (fnil fn-you-want-to-call "default-argument"))
Kodunuzdaki onun sadece
(fn-you-want-to-call-default input-argument)
Daha burada bulabilirsiniz düşürüldü: Bu giriş argümanlarla özellikle bir sürü yaparsanız o zaman belki http://clojuredocs.org/clojure_core/clojure.core/fnil
vardır Bir fonksiyon için [çoklu imzalar] (http://stackoverflow.com/questions/3208347/how-to-create-default-value-for-function-argument-in-clojure) tanımlayabileceğinizden habersizsiniz. – coredump