다음과 같은 Object of Object가 있다고 가정해 보겠습니다. -
const obj = { "CAB": { name: 'CBSSP', position: 2 }, "NSG": { name: 'NNSSP', position: 3 }, "EQU": { name: 'SSP', position: 1 } };
우리는 그러한 배열을 취하고 하위 개체의 '위치' 속성을 기반으로 하위 개체를 정렬하는 JavaScript 함수를 작성해야 합니다(오름차순 또는 내림차순).
예시
이에 대한 코드는 -
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 } }