一个go的map相关的panic错误
背景:在获取多个数据时,从数据库取到多条数据,需要把多条数据返回给前端,定义一个res返回值,为map[string]any类型,在赋值后运行发生 panic:assignment to entry in nil map
原因:在声明map类型的变量后,直接进行赋值操作,此时未初始化该变量,所以它的值是nil, 不指向任何内存地址,直接复制panic
解决:需要通过make方法分配确定的内存地址。
// 错误代码
var resData map[string]any
res["data"] = data
res["status"] = 0
// 正确代码
resData := make(map[string]any)
res["data"] = data
res["status"] = 0
标签:map,nil,data,res,go,panic
From: https://www.cnblogs.com/alisleepy/p/18057046