123456789101112131415161718192021222324252627 |
- package utils
- import "sort"
- // SortMapByKey 对 map[string]interface{} 按照键进行排序
- func SortMapByKey(m map[string]interface{}) map[string]interface{} {
- // 创建一个 map[string]int,用于记录键的索引
- indexMap := make(map[string]int)
- for k := range m {
- indexMap[k] = len(indexMap)
- }
- // 对键进行排序
- keys := make([]string, 0, len(indexMap))
- for k := range indexMap {
- keys = append(keys, k)
- }
- sort.Strings(keys)
- // 创建排序后的 map[string]interface{}
- sortedMap := make(map[string]interface{})
- for _, k := range keys {
- sortedMap[k] = m[k]
- }
- return sortedMap
- }
|