{{clojure.core/get}} 的实现在其参数不是关联集合时返回 {{nil}}。
这种行为可能会隐藏常见的编程错误,例如
(def a (atom {:a 1 :b 2}))
(:foo a) ; 忘记 deref a
;;=> nil
在对既不是 {{nil}} 也不是关联集合的某物调用 {{get}} 时几乎肯定是错误,应该通过异常来指示。
CLJ-932 被接受为一个类似的对 {{clojure.core/contains?}} 的增强。
*补丁:* 0003-CLJ-1107-Throw-exception-for-get-on-unsupported-type.patch
*方法:* 在 RT.getFrom 中抛出 IllegalArgumentException,而不是返回 nil。
*另请参阅:* CLJ-969