Szukaj…


Prawdomówność

W Clojure wszystko, co nie jest nil ani false jest uważane za logiczną prawdę.

Przykłady:

(boolean nil)        ;=> false
(boolean false)      ;=> false
(boolean true)       ;=> true
(boolean :a)         ;=> true
(boolean "false")    ;=> true
(boolean 0)          ;=> true
(boolean "")         ;=> true
(boolean [])         ;=> true
(boolean '())        ;=> true

(filter identity [:a false :b true])   ;=> (:a :b true)
(remove identity [:a false :b true])   ;=> (false)

Booleany

Każda wartość w Clojure jest uważana za prawdziwą, chyba że jest false lub nil . Prawdziwość wartości można znaleźć za pomocą (boolean value) . Możesz znaleźć prawdziwość listy wartości za pomocą (or) , która zwraca true jeśli argumenty są prawdziwe, lub (and) która zwraca true jeśli wszystkie argumenty są prawdziwe.

=> (or false nil)
nil    ; none are truthy
=> (and '() [] {} #{} "" :x 0 1 true)
true    ; all are truthy
=> (boolean "false")
true    ; because naturally, all strings are truthy


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow