【发布时间】:2015-11-03 08:22:42
【问题描述】:
如何从多维数组的每个子数组中返回最大的数字?输出将是一个最大数字的数组。
例如 数组 = [[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]
返回值 [ 5, 27, 39, 1001 ]
我试过了
function largestOfFour(arr) {
for(var i = 0; i < arr.length; i++) {
large = 0;
for(var j = 0; j < arr[i].length; j++) {
if(arr[i][j] > large) {
large = arr[i][j];
}
}
}
return arr.push(large);
}
largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]);
输出只是第一个子数组中最大的(5)
【问题讨论】:
-
我很想写
array.map(Math.max.apply.bind(Math.max, null))作为答案。 -
@thefourtheye 完美运行!把它作为答案,我支持你:jsfiddle.net/3qf9qxu2
-
@thefourtheye:这太糟糕了。美丽的。可怕。美丽的。啊啊啊!
-
@T.J.Crowder 我知道 :D 如果 OP 做出了一些努力,我也会在答案中添加并解释它:(
标签: javascript arrays