IL
[(multi-path [MAP-VALS MAP-VALS nil?]только упрощенное
[MAP-VALS nil?])]
Size: a a a
IL
[(multi-path [MAP-VALS MAP-VALS nil?]только упрощенное
[MAP-VALS nil?])]
ДН
[MAP-VALS (multi-path [MAP-VALS] []) nil?]
ДН
DF
(reduce-kv (fn [acc k v]
(assoc acc k
(reduce-kv (fn [acc k v]
(assoc acc k (if (nil? v) "" v))) {} v)))
{}
{:person
{:firstName nil
:lastName nil
:middleName nil}
:practitioner
{:firstName "1", :lastName nil, :middleName nil, :id "pr2", :role ""}})
;; => {:person {:firstName "", :lastName "", :middleName ""}, :practitioner {:firstName "1", :lastName "", :middleName "", :id "pr2", :role ""}}
(assoc acc k (if (nil? v) "" v))на
(update acc k (fnil identity ""))Если хочется удлинить код на 1 символ.
DL
(assoc acc k (if (nil? v) "" v))на
(update acc k (fnil identity ""))Если хочется удлинить код на 1 символ.
ST
DL
AC
AC
DF
DF
(reduce-kv (fn [acc k v] (assoc acc k (if (nil? v) "" v))) {} v)Стало
(reduce (fn [acc [k]] (update acc k (fnil identity ""))) v v)
СС
СС
ДН
ДН
СС
СС
СС
СС
СС