js map的key排序

2021-08-18  本文已影响0人  cjlynn
sortMap(map, ascOrDesc = true) {
      let keys = new Array()
      for (var key of map.keys()) {
        keys.push(key)
      }
      if (ascOrDesc) {
        keys.sort(function (a, b) {
          if (a.length == b.length) {
            return a.localeCompare(b);
          } else {
            return a.length - b.length;
          }
        })
      } else {
        keys.sort(function (a, b) {
          if (a.length == b.length) {
            return b.localeCompare(a);
          } else {
            return b.length - a.length;
          }
        })
      }
      let newMap = new Map()
      keys.forEach(key => {
        newMap.set(key, map.get(key))
      })
      return newMap;
    },
上一篇 下一篇

猜你喜欢

热点阅读