2
我的书 “Web开发使用Clojure” 跑短的示例代码:短的Clojure代码返回错误结果
(defn login [{:keys [id pass pass1] :as user}]
(if (and id (= pass pass1))
(println "valid user")
(println user " is not filled in correctly")))
我想:
(login {:keys ["tom" "123" "123"] :as "tom"})
,并得到:
{:as tom, :keys [tom 123 123]} is not filled in correctly
nil
为什么会得到这个结果? (and id (= pass pass1))
的条件实际上是满意的。
感谢列昂尼德,它的工作原理。 – Pauli