【go】go錯誤,panic:assignment to entry in nil map 問題記錄

一個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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章