从对象属性值返回最高数字 – JavaScript
javascriptweb developmentfront end technologyobject oriented programming
假设,我们有一个对象,其中包含对某些标准的属性评级,例如 −
const ratings = { "overall": 92, "atmosphere": 93, "cleanliness": 94, "facilities": 89, "staff": 94, "security": 92, "location": 88, "valueForMoney": 92 }
我们需要编写一个 JavaScript 函数,该函数接受一个这样的对象并返回具有最高值的键值对。
例如,对于这个对象,输出应该是 −
const output = { "staff": 94 };
示例
以下是代码 −
const rating = { "overall": 92, "atmosphere": 93, "cleanliness": 94, "facilities": 89, "staff": 94, "security": 92, "location": 88, "valueForMoney": 92 } const findHighest = obj => { const values = Object.values(obj); const max = Math.max.apply(Math, values); for(key in obj){ if(obj[key] === max){ return { [key]: max }; }; }; }; console.log(findHighest(rating));
输出
这将在控制台中产生以下输出 −
{ cleanliness: 94 }