Мне нужно отсортировать объект по значению для объекта внутри него. Можно ли отсортировать без преобразования в массив в первую очередь? Я создаю этот объект, проверяя, есть ли у 3 других массивов свое собственное свойство, и добавляя все это к одному объекту.
Я пробовал сортировать функции внутри и снаружи цикла for / in.
//how i created the object
var htmlDep = document.getElementById("departmentTable")
var tableElem = document.createElement("table");
var tdList = "";
tableElem.innerHTML = "<tr><th class='avdeling'>Avdeling</th><th class='avdeling'>Aktiv Ansatt</th><th class='avdeling'>Ny Ansatt</th><th class='avdeling'>Sluttet Ansatt</th></tr>"
var obj = {}
var distribution = ["manager", "salesMan", "consultant"]
for (var i = 0; i < distribution.length; i++) {
var work = distribution[i];
obj[work] = {
active: 0,
notActive: 0,
quit: 0
} // using 0 as default
if (active.hasOwnProperty(work)) {
obj[work].active = active[work]
}
if (notActive.hasOwnProperty(work)) {
obj[work].notActive = notActive[work]
}
if (quit.hasOwnProperty(work)) {
obj[work].quit = quit[work]
}
tdList += "<tr><td>" + work + "</td>" + "<td>" + obj[work].active + "</td>" + "<td>" + obj[work].notActive + "</td>" + "<td>" + obj[work].quit + "</td></tr>"
}
tableElem.innerHTML += tdList;
htmlDep.appendChild(tableElem)
//Object example
obj = {
manager: {
active: 450,
notActive: 20,
quit: 0
},
salesMan: {
active: 150,
notActive: 5,
quit: 3
},
ceo: {
active: 50,
notActive: 55,
quit: 0
},
consultant: {
active: 5,
notActive: 72,
quit: 30
}
}
<div id="departmentTable">
</div>
Я хочу отсортировать объект по значению notActive от высокого до низкого значения внутри HTML-таблицы