mike1779 2019-11-27 15:57 采纳率: 100%
浏览 432
已采纳

JS二维对象数组中,如何求最大值的那一组name名称

dcc([
[{name:"A",value:33}, {name:"B",value:5}],
[{name:"C",value:24]}, {name:"D",value:10}],
[{name:"E",value:30}, {name:"F",value:9}],
[{name:"G",value:13}, {name:"H",value:25}]
])

我想求得二维数组dcc中的4个值,正确答案:ACEH

  • 写回答

2条回答 默认 最新

  • 毕小宝 博客专家认证 2019-11-27 16:12
    关注

    遍历列表,记录最大值及其所名称下标,遍历过程中,找到新的最大值,就修正。参考代码:

    var lastNames = [];
    var dcc = [
    [{name:"A",value:33}, {name:"B",value:5}], 
    [{name:"C",value:24}, {name:"D",value:10}],
    [{name:"E",value:30}, {name:"F",value:9}],
    [{name:"G",value:13}, {name:"H",value:25}]];
    
    for(var i=0;i<dcc.length;i++){
      //内层遍历每个元素,元素的值还是一个数组
      var max = dcc[i][0].value;//默认最大值为第一个组
      var maxValueName = dcc[i][0].name ;
      for(var j=1;j<dcc[i].length;j++){
         if(max<dcc[i][j].value){
              //找到新最大值,修正
              max = dcc[i][j].value;
              maxValueName = dcc[i][j].name ;
            }
       }
    
       lastNames.push(maxValueName);
       console.log('maxValueName is '+maxValueName);
    }
    
    alert('last names are '+lastNames);
    
    

    运行结果:
    图片说明

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 Stata 面板数据模型选择
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 请问这个是什么意思?
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样
  • ¥15 java的GUI的运用