func main() {
	var j = js{
		Name:  "zhangsan",
		Age:   16,
		Sal:   1500.3,
		Intro: "aihao lanqiu",
	}
	json1, _ := json.Marshal(j)
	fmt.Println(string(json1))
	mp()
	slic()
}
func mp() {
	var a = map[string]interface{}{
		"Name": "lisi",
		"Age":  16,
		"Sal":  22.33,
	}
	js, _ := json.Marshal(a)
	fmt.Println(string(js))
}
func slic() {
	var slice = []map[string]interface{}{
		map[string]interface{}{
			"Name": "lisi",
			"Age":  16,
			"Sal":  22.33,
		},
		map[string]interface{}{
			"Name": "zhangsan",
			"Age":  22,
			"Sal":  1122.33,
		},
	}
	js, _ := json.Marshal(slice)
	fmt.Println(string(js))
}

切片序列化后返回的是一个数组,因为切片中包含两个元素,即切片包含两个切片故为一个数组
package main
import (
	"encoding/json"
	"fmt"
)
type js struct {
	Name  string
	Age   int
	Sal   float32
	Intro string
}
func mp() {
	var a = map[string]interface{}{
		"Name": "lisi",
		"Age":  16,
		"Sal":  22.33,
	}
	js, _ := json.Marshal(a)
	fmt.Println(string(js))
}
func slic() {
	var slice = []map[string]interface{}{
		map[string]interface{}{
			"Name": "lisi",
			"Age":  16,
			"Sal":  22.33,
		},
		map[string]interface{}{
			"Name": "zhangsan",
			"Age":  22,
			"Sal":  1122.33,
		},
	}
	js, _ := json.Marshal(slice)
	fmt.Println(string(js))
}
func main() {
	var j = js{
		Name:  "zhangsan",
		Age:   16,
		Sal:   1500.3,
		Intro: "aihao lanqiu",
	}
	json1, _ := json.Marshal(j)
	fmt.Println(string(json1))
	mp()
	slic()
}
无意义
package main
import (
	"encoding/json"
	"fmt"
)
func main() {
	var a = 1
	var s = "abc"
	a1, _ := json.Marshal(a)
	s1, _ := json.Marshal(s)
	fmt.Println(string(a1))
	fmt.Println(string(s1))
}

原文:https://www.cnblogs.com/LC161616/p/10029898.html