如何在IntelliJ中调试返回多值的Go函数,查看输出JSON内容?
Go调试时在IntelliJ Evaluate Expression中查看json.Marshal结果的方法
IntelliJ Go插件的Evaluate Expression功能支持临时执行任意合法Go代码,包括短变量声明、匿名函数等语法,不需要修改目标源码,直接按以下方法操作即可:
方法1:多行变量接收(推荐)
直接在Evaluate输入框中输入以下代码:
b, _ := json.Marshal(foo) string(b)
执行后结果区会直接输出转换完成的JSON字符串,无需额外操作。
方法2:单行匿名函数调用
如果偏好使用单行表达式,可以用匿名函数封装逻辑后立即执行:func() string { b, _ := json.Marshal(foo); return string(b) }()
补充说明
- 调试场景下用
_忽略错误是临时处理逻辑,正式业务代码请务必处理返回的错误 - 如果需要同时排查序列化失败问题,可以同时返回错误信息:
b, err := json.Marshal(foo) string(b), err
执行后会同时显示JSON字符串和序列化过程中产生的错误。
内容的提问来源于stack exchange,提问作者Ingo Bürk
相关产品推荐
相关产品推荐

