Чтобы избежать изменения структуры, я предпочитаю использовать метод Object.assign
для извлечения объекта. Этот метод объединяет второй объект параметра в первом. Чтобы получить объектные методы, нам просто нужен пустой новый объект, который используется в качестве целевого параметра.
var mo = window.localStorage.getItem("myObject");
// this object has properties only
mo = JSON.parse(mo);
// this object will have properties and functions
var completeObject = Object.assign(new MyObject(), mo);
Обратите внимание, что первый параметр Object.assign
изменен и возвращен функцией.
Вы можете сделать это, используя функцию .reduce()
массива очень легко, например так:
Идея состоит в том, чтобы отслеживать объект с наибольшим количеством и сравнивать его с каждым из элементов. в списке. Функция Reduce вернет элемент с наибольшим количеством, когда он прошел весь список. Аналогично, во втором примере, приведенном ниже, вы можете просто получить число, используя Math.max()
для сравнения всех подсчетов.
var data = [
{_id: "item1", count: 300},
{_id: "item2", count: 265},
{_id: "item3", count: 410},
{_id: "item4", count: 115},
{_id: "item5", count: 395},
];
var highestCountObject = data.reduce((res, item) => item.count > res.count ? item : res, {count: -Infinity});
console.log(highestCountObject);
var highestNumber = Math.max(...data.map(item => item.count));
console.log(highestNumber);
Используйте цикл for для отслеживания максимального значения в переменной.
let obj = [{_id: "aspheresis platelets", count: 264},{_id: "cryoprecipitate",count: 330}]
let max = -Infinity
for( let i=0; i< obj.length; i++){
if(obj[i].count > max) {
max = obj[i].count;
}
}
console.log(max)
Сортировать в порядке убывания. и затем счетчик доступа элемента индекса 0th
.
let obj = [{_id: "aspheresis platelets", count: 264},{_id: "cryoprecipitate",count: 330}]
let op = obj.sort((a,b)=> b.count-a.count)[0].count
console.log(op)