javascript JS在javascript中按值排序Map或Object
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript JS在javascript中按值排序Map或Object相关的知识,希望对你有一定的参考价值。
var arr = [];
//IE 不支持
// can also use Array.from polyfill here
//for(var el of _this.repeatedCourseNumMap){
//arr.push(el);
//}
//IE 支持
_this.repeatedCourseNumMap.forEach(function (value, key) {
arr.push([key, value]);
});
arr.sort(function (x, y) {
return x[0].slice(0, x[0].indexOf(':')) - y[0].slice(0, y[0].indexOf(':'));
});
//IE 不支持
//var sorted = new Map(arr);
//IE 支持
var sorted = new Map();
arr.forEach(function(e){
sorted.set(e[0], e[1]);
});
var messageArr = [];
sorted.forEach(function (value, key) {
if (value.length > 0) {
var str = "";
value.forEach(function (element, index, array) {
// element: 指向当前元素的值
// index: 指向当前索引
// array: 指向Array对象本身
str = str + '「' + element + '」、';
});
if (str.length > 0) {
str = str.substring(0, str.length - 1);
messageArr.push(StringFormatUtil.Format($.itp.i18n.SE1G040.MSG_W_0011, '「' + value[0].slice(0, value[0].indexOf('-')) + '」', str));
}
}
});
//对象排序
//Object.keys(objs).sort()可以获取到排好序的keys
var objs = {
f: {
id: 2,
name: '2'
},
a: {
id: 3,
name: '3'
},
c: {
id: 1,
name: '1'
}
};
// 自定义排序规则,按对象的id排序
var sortedObjKeys = Object.keys(objs).sort(function(a, b) {
return objs[b].id - objs[a].id;
});
// 按默认排序规则,按对象的key排序
var sortedObjKeys = Object.keys(objs).sort();
var arr = [];
for (var index in sortedObjKeys) {
console.log(sortedObjKeys[index]);
console.log(objs[sortedObjKeys[index]]);
console.log('----------');
arr.push(objs[sortedObjKeys[index]);
}
objs.sort(function(a, b){
return a.id > b.id;
});
var obj = {
1 :[{userID:'1'}],
2 :[{userID:'2'}],
H :[{userID:'3'}],
Z :[{userID:'4'}],
};
var objKeys = Object.keys(obj);
objKeys.sort((a,b) =>{
return a>b;
}).map((val) => {
console.log("userID "+ obj[val][0].userID)
});
/ 输出
// userID 1
// userID 2
// userID 3
// userID 4
以上是关于javascript JS在javascript中按值排序Map或Object的主要内容,如果未能解决你的问题,请参考以下文章
JavaScript(JS)之Javascript对象
如何在swift中从.js文件中调用javascript函数
javascript中直接写php代码的方法
在节点 js 中使用 javascript 函数
使用 Javascript/Node.js 在代码中执行 mongoimport
如何给网站中javascript增加版本号?