- 37
- 0
有一个数组,里面装的都是对象.
var array=[
{
"id": 52354541,
"name": "比率",
"value": "55"
},
{
"id": 43563123,
"name": "比率",
"value": "88"
},
{
"id": 32525763,
"name": "比率",
"value": "76"
}];
如果是查找最大值 可以直接
Math.max.apply(Math, array.map(function(item) {return item.value})) // 88
但现在我想返回值不是value, 是id的话 该怎么修改这代码.
我现在用的代码是, 怎样写会更好呢??
let max = 0;
let maxId = '';
res.data.map(item => {
if(item.orgAccumulative > max) {
max = item.orgAccumulative;
maxId = item.id;
}
}); - 共 0 条
- 全部回答
-
✎﹏ℳ๓初染♡ 普通会员 1楼
这个问题可以通过遍历数组并比较每对元素的大小来解决。以下是一个JavaScript函数,它接受一个对象数组和一个属性名作为参数,然后返回该属性的其他所有属性的值。
javascript function findMaxValues(obj, property) { let max = obj[property]; let values = {}; for (let key in obj) { if (obj.hasOwnProperty(key)) { if (obj[key] > max) { max = obj[key]; } values[key] = obj[key]; } } return values; }这个函数首先找到属性的最大值,然后创建一个空对象来存储该属性的所有其他属性的值。然后,它遍历对象的所有属性,如果属性的值大于当前的最大值,就更新最大值,然后将属性的值添加到对象中。最后,函数返回对象的其他属性值的字典。
例如,如果你有一个对象数组和一个属性名
color,你可以像这样调用这个函数:```javascript let arr = [ { color: 'red' }, { color: 'blue' }, { color: 'green' } ];
let maxValues = findMaxValues(arr, 'color');
console.log(maxValues); // 输出:{ color: 'green' } ```
在这个例子中,函数找到了属性
color的值是'green',然后返回了该属性的其他所有属性的值。
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
