如何在Clojure中显示文档

Zub*_*air 3 clojure

我做以下事情:

(defn ss [] "kjhhj")
(doc ss)
Run Code Online (Sandbox Code Playgroud)

但得到"零"返回.为什么是这样?

更新:

如果我做 :

(defn tt "kjhhj" [] 1)
(str (doc tt) )
Run Code Online (Sandbox Code Playgroud)

如图所示,我回去一个空字符串...没有了"DOC"输出去什么?

dfa*_*fan 12

docstring位于函数的参数之前.您已经定义了一个没有docstring的函数来返回一个字符串.

user> (defn ss [] "kjhhj")
#'user/ss
user> (ss)
"kjhhj"
user> (doc ss)
-------------------------
user/ss
([])
  nil
nil

user> (defn tt "kjhhj" [])
#'user/tt
user> (tt)
nil
user> (doc tt)
-------------------------
user/tt
([])
  kjhhj
nil
user> 
Run Code Online (Sandbox Code Playgroud)


Jou*_*nen 7

要捕获打印到*out*的内容的输出,请使用

(with-out-str (doc f))
Run Code Online (Sandbox Code Playgroud)