javascript匹配两个数组然后显示最大值

时间:2011-02-23 14:27:27

标签: javascript arrays

我正在尝试匹配两个数组中的两个值

var months ['jan', 'feb', 'march'];
var noDays ['31', '28', '31'];

然后我想以最大数量结束月份并将其返回

“jan和march共有31天”

请提出任何建议

1 个答案:

答案 0 :(得分:3)

嗯,这个问题可以用一个简单的算法来解决:

var months = ['jan', 'feb', 'march'];
var noDays = [31, 28, 31];

var maxDays = 0;
var longestMonths = [];
for (var i = 0; i<Math.min(months.length, noDays.length);i++){
   if(noDays[i]>maxDays){
       maxDays = noDays[i];
       longestMonths = [months[i]];
   }else if(noDays[i]==maxDays)
       longestMonths.push(months[i]);
}

执行此代码后,maxDays为31,longestMonths为['jan', 'march']