7
Haritadaki birkaç olası tuşun ilk sıfır olmayan değerini almanın en iyi yolu nedir?Haritadaki olası değerlerden birini elde etmek için deyimsel yol?
Örnek:
(get-first-matching {:fum 4 :bar 41 :baz 45} [:foo :bar :baz])
;=> 41
Tam olarak ne arıyorum! :) – Annan
Haritanın anahtarların toplanmasıyla adlandırılan yüklem işlevi olarak kullanıldığını görmek ilginç. Bu nedenle, elde edeceğiniz şey kesinlikle ilk sıfır olmayan değer değil, ilk "doğruluk" değeridir. Örneğin, (bazı {: foo nil: bar false: baz 20} [: foo: bar: baz]) 'ı deneyin. –
Doğru, yani nil veya false olan değerler için çalışan bir sürüm '(ne zaman-let [[k v] (bazı # (% m bulmak) [: foo: bar: baz])] v)' gibi görünüyor. – amalloy