我有一个Node JS程序,我需要根据它们的CPU值为不同对象分配“优先级”。因此,我将所有对象存储在一个数组中,并根据增加的CPU值对此数组进行排序。为数组中的对象分配优先级值
我的阵列看起来像这样(在CPU的值不断地改变):
var lowerThan95 = [{
'myname': 'abc',
'CPU': 10
}, {
'myname': 'gfd',
'CPU': 45
}, {
'myname': 'vfd',
'CPU': 100
}, {
'myname': 'bvf',
'CPU': 80
}]
所以最低的CPU值应具有优先级1,2等的第二优先级最低的我的想法是添加在一个“优先级”属性,然后遍历数组中的每个元素并每次添加一个优先级。但是,我如何实现这一目标?
这是我试过到目前为止:
// sorts the array based on ascending cpu values
lowerThan95.sort(function(a, b) {
return parseFloat(a.CPU) - parseFloat(b.CPU);
});
// what do I do here?
lowerThan95.forEach(function(value) {
var priority = priority + 1
console.log('pr', priority)
});
这是正确的做法?有一个更好的方法吗?任何帮助/提示将不胜感激。
10你真的需要优先对象吗?如果它被排序,优先级总是“长度 - 索引” – tymeJV
在你的情况下'priority == index',所以你只需要索引一个元素在数组中具有优先级 – MysterX
正如其他人所说的,你并不需要优先级。但是,您的排序不起作用。 'average_cpu'突然从哪里来? – Connum