JavaScript:对对象的对象进行排序
javascriptweb developmentfront end technologyobject oriented programming
假设我们有一个像这样的对象的对象 −
const obj = {
"CAB": {
name: 'CBSSP',
position: 2
},
"NSG": {
name: 'NNSSP',
position: 3
},
"EQU": {
name: 'SSP',
position: 1
}
};
我们需要编写一个 JavaScript 函数,该函数接受一个这样的数组,并根据子对象的 'position' 属性对子对象进行排序(按升序或降序)。
示例
其代码为 −
const obj = {
"CAB": {
name: 'CBSSP',
position: 2
},
"NSG": {
name: 'NNSSP',
position: 3
},
"EQU": {
name: 'SSP',
position: 1
}
};
const sortByPosition = obj => {
const order = [], res = {};
Object.keys(obj).forEach(key => {
return order[obj[key]['position'] - 1] = key;
});
order.forEach(key => {
res[key] = obj[key];
});
return res;
}
console.log(sortByPosition(obj));
输出
控制台中的输出将是 −
{
EQU: { name: 'SSP', position: 1 },
CAB: { name: 'CBSSP', position: 2 },
NSG: { name: 'NNSSP', position: 3 }
}
相关文章
有用资源
javascript 参考教程 - 该教程包含有关 javascript 的更多信息:https://www.cainiaomax.com/javascript/

