跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 分享一下自己在用的 go-dump 库
未分類
2020 年 7 月 23 日

分享一下自己在用的 go-dump 库

分享一下自己在用的 go-dump 库

資深大佬 : kzzhr 4

先看效果:

aInt := 1 bStr := `sf` cMap := map[string]interface{}{"name": "z", "age": 14} dArray := []interface{}{&cMap, aInt, bStr}  dump.Dump(aInt, &aInt, &bStr, bStr, cMap, dArray, cMap["name"], dArray[2], dArray[aInt]) 

https://i.imgur.com/bBV53DC.jpg 分享一下自己在用的 go-dump 库

相比 print 会提供几个信息:

  • 代码行号
  • 变量名
  • 指针类型的展开(跟 json 一样,不支持循环引用)

为什么要搞这个东西?

之前调 Go 的代码的时候用 print,但是打出来的日志总是不知道在哪,经常还会看到别人使用 print("===ABC===")。

后来用 GoLand 的 postfix 功能做了一键打印 json 。但脱离了 GoLand 就不太好使了,于是决定实现一个库,哪都能用。

再发一个 postfix 的方式,在 Goland 里还是挺好用的

https://i.imgur.com/WQaQFHq.gif 分享一下自己在用的 go-dump 库

Repo 地址(好用的话不要忘了赏我一个 star

大佬有話說 (4)

  • 資深大佬 : somalia

    star

  • 資深大佬 : mornlight

    你这个获取参数名的方式有点风骚,学习了 分享一下自己在用的 go-dump 库

  • 資深大佬 : mornlight

    请教一下主,最里面是 ast 解析源码,那么如果在编译后没有源码的运行环境,parser.ParseFile 是不是就失效了,拿不到参数名?

  • 主 資深大佬 : kzzhr

    @mornlight 对,在没有源码的运行环境是不行的。所以主要还是用在调试。

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具