Cho đối tượng chứa các đối tượng con:
const obj = {
"CAB": { name: 'CBSSP', position: 2 },
"NSG": { name: 'NNSSP', position: 3 },
"EQU": { name: 'SSP', position: 1 }
};Viết hàm sắp xếp các đối tượng con dựa trên thuộc tính 'position' (tăng hoặc giảm dần).
Ví dụ
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));Kết quả
Kết quả in ra console:
[
EQU: { name: 'SSP', position: 1 },
CAB: { name: 'CBSSP', position: 2 },
NSG: { name: 'NNSSP', position: 3 }
]