Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

JavaScript: Sắp xếp đối tượng của đối tượng

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 } 
]