首頁 > 後端開發 > Golang > 如何將字串映射到 Go JSON 物件中的各種類型?

如何將字串映射到 Go JSON 物件中的各種類型?

Barbara Streisand
發布: 2024-12-14 12:05:11
原創
721 人瀏覽過

How to Map Strings to Diverse Types in Go JSON Objects?

將字串對應到JSON 物件中的多種型別

在Go 中,對應需要明確指定其鍵與值型別。在處理允許任意類型的鍵值對的 JSON 物件時,此限制會帶來障礙。

問題:

我們如何建立一個可以轉換為{ "a": "apple", "b": 2 } 形式的JSON 對象,其中鍵和值可以不同類型?

答案:

Go 透過其 interface{} 類型提供了解決方案,它可以保存任何類型的值。根據encoding/json套件文檔,將JSON解組到介面{}時,適用以下規則:

  • 布林值儲存為bool。
  • 數字儲存為float64 .
  • 字串儲存為字串。
  • 陣列儲存為[]interface{}.
  • 物件儲存為map[string]interface{}。
  • 空值儲存為nil。

要利用它,我們可以簡單地創建一個map[string]interface{}並用不同類型的值填充它:

m := map[string]interface{}{"a":"apple", "b":2}
登入後複製

This現在可以透過使用json. Marshal() 函數將map 編組,輕鬆將其轉換為JSON 物件。

以上是如何將字串映射到 Go JSON 物件中的各種類型?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板