可视化/浏览/检查嵌套的哈希映射

时间:2016-03-23 09:54:52

标签: clojure

假设一个函数返回一个大而深度嵌套的hashmap。你通过哪种方式研究它的结构?打印到控制台很困惑,使用clojure.pprint / pprint使它更好一些,但仍然没有给你一个概述。

如何理解它的数据结构?

1 个答案:

答案 0 :(得分:2)

有几种方法可以检查地图:

  • clojure.inspector(正如@cfrick所述)

    (require '[clojure.inspector :as inspector])
    (inspector/inspect {:a 1 :b 2}) ;; #object[javax.swing.JFrame 0x1b730837 "javax.swing.JFrame[frame0,4,23,400x400,invalid,layout=java.awt.BorderLayout,title=Clojure Inspector,resizable,normal,defaultCloseOperation=HIDE_ON_CLOSE,rootPane=javax.swing.JRootPane[,0,22,400x378,invalid,layout=javax.swing.JRootPane$RootLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=16777673,maximumSize=,minimumSize=,preferredSize=],rootPaneCheckingEnabled=true]"]
    
  • clojure pretty-printing,请注意您可以customize它的行为。另外,如果您想删除不需要的值,请不要忘记只使用select-keysdissoc保留所需的密钥。