2

「Clojure を使用した Web 開発」という本の短いサンプル コードを実行しています。

(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))は実際に満たされています。

4

1 に答える 1