js中对map分别按照键和值进行排序

3,442 阅读1分钟

1、按照value排序

var map=new Map();
map.set("b","8");
map.set("c","10");
map.set("a","1");
map.set("d","7");
map.set("e","3");

var arrayObj=Array.from(map);
//按照value值降序排序
arrayObj.sort(function(a,b){return a[1]-b[1]});
for (var [key, value] of arrayObj) {
    console.log(key + ' = ' + value);
}

2、按照key排序

var map=new Map();
map.set("b","8");
map.set("c","10");
map.set("a","1");
map.set("d","7");
map.set("e","3");

var arrayObj=Array.from(map);
arrayObj.sort(function(a,b){return a[0].localeCompare(b[0])});
for (var [key, value] of arrayObj) {
    console.log(key + ' = ' + value);
}

对于map的三种遍历方法

1

arrayObj.forEach(function (item) {
    console.log(item.toString());
});

2

arrayObj.forEach(function (value, key, map) {
    console.log(value);
})

3

for (var [key, value] of arrayObj) {
    console.log(key + ' = ' + value);
 }